Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách tốt nhất đổi định dạng ngày trong SELECT MySQL

Dùng hàm DATE_FORMAT() để tùy chỉnh hiển thị ngày giờ trong truy vấn SELECT.

Cú pháp:

SELECT DATE_FORMAT(yourColumnName, "%d/%m/%Y %H:%i") AS anyAliasName FROM yourTableName WHERE condition;

Tạo bảng:

mysql> CREATE TABLE bestDateFormatDemo (Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ArrivalDateTime DATETIME);

Chèn dữ liệu:

mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES(NOW()), (DATE_ADD(NOW(), INTERVAL -2 YEAR)), ('2014-01-31 13:45:56'), ('2016-02-11 12:40:30'), ('2018-12-31 12:59:59');

Hiển thị gốc:

+----+---------------------+
| Id | ArrivalDateTime     |
+----+---------------------+
| 1  | 2019-02-22 22:50:10 |
| 2  | 2017-02-22 22:50:28 |
| 3  | 2014-01-31 13:45:56 |
| 4  | 2016-02-11 12:40:30 |
| 5  | 2018-12-31 12:59:59 |
+----+---------------------+

Đổi định dạng dd/mm/YYYY HH:MM (24h):

mysql> SELECT DATE_FORMAT(ArrivalDateTime, "%d/%m/%Y %H:%i") AS changeDateFormat FROM bestDateFormatDemo WHERE Id IN(1,2,3,4,5);

Kết quả:

+------------------+
| changeDateFormat |
+------------------+
| 22/02/2019 22:50 |
| 22/02/2017 22:50 |
| 31/01/2014 13:45 |
| 11/02/2016 12:40 |
| 31/12/2018 12:59 |
+------------------+

Định dạng 12h (dùng %h thay %H):

mysql> SELECT DATE_FORMAT(ArrivalDateTime, "%d/%m/%Y %h:%i") AS changeDateFormat FROM bestDateFormatDemo WHERE Id IN(1,2,3,4,5);

Kết quả:

+------------------+
| changeDateFormat |
+------------------+
| 22/02/2019 10:50 |
| 22/02/2017 10:50 |
| 31/01/2014 01:45 |
| 11/02/2016 12:40 |
| 31/12/2018 12:59 |
+------------------+