Hàm DATE_FORMAT() trong MySQL cho phép hiển thị giá trị ngày/giờ theo định dạng tùy chỉnh bằng các chỉ định định dạng (format specifiers). Đây là công cụ quan trọng để trình bày ngày tháng dễ đọc cho người dùng.
Cú pháp
SELECT DATE_FORMAT(tên_cột, 'chuỗi_định_dạng') FROM tên_bảng;
Các chỉ định định dạng phổ biến
| Chỉ định | Ý nghĩa | Ví dụ |
|---|---|---|
| %d | Ngày trong tháng (00-31) | 01, 31 |
| %m | Tháng dạng số (00-12) | 01, 12 |
| %Y | Năm 4 chữ số | 2024 |
| %M | Tên tháng đầy đủ | January, December |
| %H | Giờ 24h (00-23) | 14 |
| %i | Phút (00-59) | 05 |
| %s | Giây (00-59) | 09 |
Ví dụ thực hành
mysql> CREATE TABLE DemoTable (ShippingDate DATE);
mysql> INSERT INTO DemoTable VALUES
('2016-01-21'), ('2018-05-24'), ('2019-12-31');
mysql> SELECT * FROM DemoTable;
+--------------+
| ShippingDate |
+--------------+
| 2016-01-21 |
| 2018-05-24 |
| 2019-12-31 |
+--------------+
Định dạng dd/mm/YYYY
mysql> SELECT DATE_FORMAT(ShippingDate, '%d/%m/%Y') FROM DemoTable;
+--------------------------------------+
| date_format(ShippingDate,'%d/%m/%Y') |
+--------------------------------------+
| 21/01/2016 |
| 24/05/2018 |
| 31/12/2019 |
+--------------------------------------+
Định dạng dd-Month-YYYY (tên tháng viết tắt)
mysql> SELECT DATE_FORMAT(ShippingDate, '%d-%M-%Y') FROM DemoTable;
+--------------------------------------+
| date_format(ShippingDate,'%d-%M-%Y') |
+--------------------------------------+
| 21-January-2016 |
| 24-May-2018 |
| 31-December-2019 |
+--------------------------------------+
Mẹo: Danh sách đầy đủ các chỉ định định dạng xem tại tài liệu MySQL: DATE_FORMAT().