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

ดึงเฉพาะส่วนเดือนจากวันที่ใน MySQL ด้วย DATE_FORMAT

บทความนี้สาธิตการใช้ DATE_FORMAT() เพื่อดึงเฉพาะส่วนเดือนจากคอลัมน์ DATETIME ทั้งรูปแบบชื่อเดือนเต็ม (%M) และตัวเลขเดือน 2 หลัก (%m)

สร้างตารางและข้อมูลวันที่

mysql> CREATE TABLE DemoTable753 (DueDate DATETIME);
Query OK, 0 rows affected (0.51 sec)

mysql> INSERT INTO DemoTable753 VALUES('2019-06-21'), ('2019-01-31'), ('2018-12-01'), ('2016-11-11');

คิวรีดึงเดือน 2 รูปแบบ

mysql> SELECT 
    DATE_FORMAT(DueDate, '%M') AS MonthName,
    DATE_FORMAT(DueDate, '%m') AS MonthNumber
FROM DemoTable753;

ผลลัพธ์

+---------------------------+---------------------------+
| date_format(DueDate,'%M') | date_format(DueDate,'%m') |
+---------------------------+---------------------------+
| June                      | 06                        |
| January                   | 01                        |
| December                  | 12                        |
| November                  | 11                        |
+---------------------------+---------------------------+

Format Specifier สำหรับเดือน:

  • %M - ชื่อเดือนเต็ม (January - December)
  • %m - เดือน 2 หลัก (01 - 12)
  • %b - ชื่อเดือนย่อ (Jan - Dec)
  • %c - เดือน 1-2 หลัก (1 - 12)

ฟังก์ชันทางเลือก: MONTH(date) คืนค่าตัวเลข 1-12 (Integer) ใช้ง่ายกว่าสำหรับคำนวณ/เปรียบเทียบ