ใช้ฟังก์ชัน MONTHNAME() (ชื่อเดือน) หรือ MONTH() (หมายเลขเดือน) ในเงื่อนไข WHERE
ไวยากรณ์
SELECT * FROM yourTableName WHERE MONTHNAME(yourColumnName) = 'yourMonthName';
หรือ
SELECT * FROM yourTableName WHERE MONTH(yourColumnName) = yourMonthNumber;
สร้างตารางตัวอย่าง
mysql> CREATE TABLE selectAllEntriesDemo (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> ShippingDate DATETIME
-> );
เพิ่มข้อมูลตัวอย่าง (9 แถว)
mysql> INSERT INTO selectAllEntriesDemo(ShippingDate) VALUES
('2019-01-21'), ('2018-02-24'), ('2010-10-22'), ('2011-04-12'),
('2013-02-10'), ('2014-02-15'), ('2016-06-14'), ('2017-02-14'),
('2015-03-29');
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM selectAllEntriesDemo;
ผลลัพธ์:
+----+---------------------+ | Id | ShippingDate | +----+---------------------+ | 1 | 2019-01-21 00:00:00 | | 2 | 2018-02-24 00:00:00 | | 3 | 2010-10-22 00:00:00 | | 4 | 2011-04-12 00:00:00 | | 5 | 2013-02-10 00:00:00 | | 6 | 2014-02-15 00:00:00 | | 7 | 2016-06-14 00:00:00 | | 8 | 2017-02-14 00:00:00 | | 9 | 2015-03-29 00:00:00 | +----+---------------------+
Query เลือกเดือน กุมภาพันธ์ (MONTHNAME)
mysql> SELECT * FROM selectAllEntriesDemo WHERE MONTHNAME(ShippingDate) = 'February';
ผลลัพธ์ (4 แถว):
+----+---------------------+ | Id | ShippingDate | +----+---------------------+ | 2 | 2018-02-24 00:00:00 | | 5 | 2013-02-10 00:00:00 | | 6 | 2014-02-15 00:00:00 | | 8 | 2017-02-14 00:00:00 | +----+---------------------+
Query เลือกเดือน กุมภาพันธ์ (MONTH)
mysql> SELECT * FROM selectAllEntriesDemo WHERE MONTH(ShippingDate) = 2;
ผลลัพธ์เหมือนกัน (4 แถว)
ฟังก์ชันวันที่/เวลาที่เกี่ยวข้อง
| ฟังก์ชัน | คืนค่า | ตัวอย่าง |
|---|---|---|
| MONTHNAME(date) | ชื่อเดือนภาษาอังกฤษ | 'February' |
| MONTH(date) | หมายเลขเดือน 1-12 | 2 |
| YEAR(date) | ปี 4 หลัก | 2019 |
| DAY(date) | วัน 1-31 | 14 |
| QUARTER(date) | ไตรมาส 1-4 | 1 |
ประสิทธิภาพ: ใช้ Range Query แทน
-- เร็วกว่า ใช้ index ได้ SELECT * FROM selectAllEntriesDemo WHERE ShippingDate >= '2019-02-01' AND ShippingDate < '2019-03-01';
หลีกเลี่ยงการใช้ฟังก์ชันบนคอลัมน์ใน WHERE เพื่อให้ใช้ index ได้