Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีหาวันแรกของเดือนปัจจุบันใน MySQL

สามารถใช้ DATE_SUB() ร่วมกับ LAST_DAY() และ DAY() เพื่อคำนวณย้อนกลับจากวันสุดท้ายของเดือน:

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) วัน = วันแรกของเดือน

วิธีง่ายกว่า: ใช้ DATE_FORMAT(CURDATE(), '%Y-%m-01') จะได้ผลลัพธ์เดียวกันและอ่านง่ายกว่า