Computer >> Máy Tính >  >> Lập trình >> MySQL

MySQL DATE_FORMAT '% M' được sử dụng trong tháng ngắn hạn?

Định dạng Ngày% M không được sử dụng để hiển thị các tháng ngắn hạn như tháng 1 cho tháng 1, tháng 2 cho tháng 2, v.v. Bạn cần sử dụng hàm DATE_FORMAT () với định dạng% b cho tháng ngắn hạn. Cú pháp như sau:

SELECT DATE_FORMAT(yourColumnName, '%d-%b-%y') AS anyVariableName FROM yourTableName;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau:

mysql> create table DateFormatMonthDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> ShippingDate date,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.63 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn để chèn bản ghi như sau:

mysql> insert into DateFormatMonthDemo(ShippingDate) values('2019-05-21');
Query OK, 1 row affected (0.23 sec)
mysql> insert into DateFormatMonthDemo(ShippingDate) values('2015-05-23');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DateFormatMonthDemo(ShippingDate) values('2019-11-01');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DateFormatMonthDemo(ShippingDate) values('2017-12-24');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DateFormatMonthDemo(ShippingDate) values('2016-01-13');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DateFormatMonthDemo(ShippingDate) values('2015-02-22');
Query OK, 1 row affected (0.19 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau:

mysql> select *from DateFormatMonthDemo;
+----+--------------+
| Id | ShippingDate |
+----+--------------+
|  1 | 2019-05-21   |
|  2 | 2015-05-23   |
|  3 | 2019-11-01   |
|  4 | 2017-12-24   |
|  5 | 2016-01-13   |
|  6 | 2015-02-22   |
+----+--------------+
6 rows in set (0.00 sec)

Đây là truy vấn để hiển thị tên tháng ngắn:

mysql> select DATE_FORMAT(ShippingDate, '%d-%b-%y') AS DateDemo from DateFormatMonthDemo;

Sau đây là kết quả:

+-----------+
| DateDemo  |
+-----------+
| 21-May-19 |
| 23-May-15 |
| 01-Nov-19 |
| 24-Dec-17 |
| 13-Jan-16 |
| 22-Feb-15 |
+-----------+
6 rows in set (0.04 sec)