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

Muốn chỉ lấy phần tháng từ ngày trong MySQL

Muốn chỉ lấy phần tháng từ ngày trong MySQL

Để chỉ lấy phần tháng, hãy sử dụng DATE_FORMAT().

Hãy tạo một bảng trước:

mysql> create table DemoTable753 (DueDate datetime);
Query OK, 0 rows affected (0.51 sec)

Chèn một số bản ghi vào bảng bằng lệnh insert:

mysql> insert into DemoTable753 values('2019-06-21');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable753 values('2019-01-31');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable753 values('2018-12-01');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable753 values('2016-11-11');
Query OK, 1 row affected (0.23 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select:

mysql> select * from DemoTable753;

Điều này sẽ tạo ra đầu ra sau:

+---------------------+
| DueDate             |
+---------------------+
| 2019-06-21 00:00:00 |
| 2019-01-31 00:00:00 |
| 2018-12-01 00:00:00 |
| 2016-11-11 00:00:00 |
+---------------------+
4 rows in set (0.00 sec)

Truy vấn sau chỉ lấy phần tháng từ ngày trong MySQL:

mysql> select date_format(DueDate, '%M'), date_format(DueDate, '%m') from DemoTable753;

Điều này sẽ tạo ra đầu ra sau:

+---------------------------+---------------------------+
| date_format(DueDate, '%M') | date_format(DueDate, '%m') |
+---------------------------+---------------------------+
| June                      | 06                        |
| January                   | 01                        |
| December                  | 12                        |
| November                  | 11                        |
+---------------------------+---------------------------+
4 rows in set (0.00 sec)

Giải thích:

  • %M: Tên tháng đầy đủ (January, February, ...)
  • %m: Số tháng 2 chữ số (01, 02, ..., 12)
  • Cũng có thể dùng MONTH(DueDate) trả về số nguyên 1-12, hoặc MONTHNAME(DueDate) trả về tên tháng.