Khi sử dụng MySQL, bạn có thể sử dụng DATE()
hàm để trích xuất phần ngày tháng từ một biểu thức ngày tháng hoặc ngày giờ.
Đây là cách nó hoạt động.
Cú pháp
Cú pháp như sau:
DATE(expr)
Ở đâu expr
là biểu thức ngày tháng hoặc ngày giờ.
Ví dụ 1 - Cách sử dụng cơ bản
Dưới đây là một ví dụ để chứng minh cách sử dụng cơ bản của nó.
SELECT DATE('2020-10-01 12:35:06') AS 'Result';
Kết quả:
+------------+ | Result | +------------+ | 2020-10-01 | +------------+
Vì vậy, tôi đã cung cấp một giá trị bao gồm cả ngày và giờ, và DATE()
hàm trả về phần ngày của giá trị đó.
Ví dụ 2 - Sử dụng nó với NOW ()
Nếu bạn sử dụng một hàm như NOW()
ví dụ:bạn có thể sử dụng DATE()
để chỉ trích xuất phần ngày tháng từ giá trị trả về của NOW()
.
SELECT NOW(), DATE(NOW());
Kết quả:
+---------------------+-------------+ | NOW() | DATE(NOW()) | +---------------------+-------------+ | 2018-06-25 08:33:42 | 2018-06-25 | +---------------------+-------------+
Tuy nhiên, trong trường hợp này, chúng tôi có thể chỉ sử dụng CURDATE()
. Làm điều này sẽ loại bỏ nhu cầu sử dụng DATE()
:
SELECT CURDATE();
Kết quả:
+------------+ | CURDATE() | +------------+ | 2018-06-25 | +------------+
Ví dụ 3 - Truy vấn Cơ sở dữ liệu
Hầu hết thời gian, bạn có thể sẽ sử dụng chức năng này với các giá trị được truy xuất từ cơ sở dữ liệu. Các giá trị đó có thể được lưu trữ dưới dạng ngày giờ giá trị và bạn chỉ cần phần ngày tháng.
Dưới đây là một ví dụ, trong đó cột cơ sở dữ liệu được lưu trữ dưới dạng ngày giờ giá trị. Tôi trả về giá trị đó và tôi cũng sử dụng DATE()
hàm để trả về phần ngày tháng từ cùng một giá trị:
USE sakila; SELECT payment_date AS 'Date/Time', DATE(payment_date) AS 'Date' FROM payment WHERE payment_id = 1;
Kết quả:
+---------------------+------------+ | Date/Time | Date | +---------------------+------------+ | 2005-05-25 11:30:37 | 2005-05-25 | +---------------------+------------+