Vấn đề:
Bạn muốn lấy ngày từ cột ngày và giờ trong cơ sở dữ liệu MySQL.
Ví dụ:
Cơ sở dữ liệu của chúng tôi có một bảng tên là travel
với dữ liệu trong các cột id
, first_name
, last_name
và timestamp_of_booking
.
id | first_name | last_name | timestamp_of_booking |
---|---|---|---|
1 | Lisa | Watson | 2019-04-20 14:15:34 |
2 | Tom | Smith | 2019-03-31 20:10:14 |
3 | Andy | Markus | 2019-08-03 10:05:45 |
4 | Alice | Màu nâu | 2019-07-01 12:47:54 |
Đối với mỗi khách du lịch, hãy lấy họ và tên của họ và chỉ ngày đặt phòng . (Lưu ý:timestamp_of_booking
cột chứa cả dữ liệu ngày và giờ.)
Giải pháp:
Chúng tôi sẽ sử dụng DATE()
hàm số. Đây là truy vấn bạn sẽ viết:
SELECT first_name, last_name, DATE(timestamp_of_booking) AS date_of_booking FROM travel;
Đây là kết quả của truy vấn:
first_name | last_name | date_of_booking |
---|---|---|
Lisa | Watson | 2019-04-20 |
Tom | Smith | 2019-03-31 |
Andy | Markus | 2019-08-03 |
Alice | Màu nâu | 2019-07-01 |
Thảo luận:
Trong MySQL, sử dụng hàm DATE () để truy xuất ngày từ giá trị datetime hoặc timestamp. Hàm này chỉ nhận một đối số - một biểu thức trả về giá trị ngày tháng / ngày giờ / dấu thời gian hoặc tên của cột dấu thời gian / ngày giờ. (Trong ví dụ của chúng tôi, chúng tôi sử dụng một cột dấu thời gian kiểu dữ liệu.)
Hàm DATE () chỉ trả về thông tin ngày tháng. Trong ví dụ của chúng tôi, nó trả về ‘2019-03-31’ cho Tom Smith’s ngày đặt chỗ. Lưu ý rằng thông tin thời gian không được bao gồm.