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

Cách lấy ngày đầu tiên của tháng hiện tại trong MySQL

Với câu truy vấn MySQL sau, chúng ta có thể lấy ngày đầu tiên của tháng hiện tại:

mysql> SELECT DATE_SUB(LAST_DAY(NOW()), INTERVAL DAY(LAST_DAY(NOW())) - 1 DAY) AS 'FIRST DAY OF CURRENT MONTH';
+----------------------------+
| FIRST DAY OF CURRENT MONTH |
+----------------------------+
| 2017-10-01                 |
+----------------------------+
1 row in set (0.00 sec)

Cơ chế: LAST_DAY(NOW()) lấy ngày cuối tháng, DAY(...) lấy số ngày của tháng đó, trừ đi 1 rồi dùng DATE_SUB để lùi về ngày đầu tiên. Cách đơn giản hơn: DATE_FORMAT(NOW(), '%Y-%m-01').