ในการเลือก MySQL ตามเดือนและปี ให้ใช้ฟังก์ชันในตัว YEAR() และ MONTH() ไวยากรณ์มีดังนี้ −
เลือก *จาก yourTableName โดยที่ YEAR(yourColumnName) =YearValue AND MONTH(yourColumnName) =monthValue;
เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้ −
mysql> สร้างตาราง selectDataOnYearandMonthDemo −> ( −> BookId int, −> BookName varchar(100), −> BookDueDate datetime −> );Query OK, 0 แถวได้รับผลกระทบ (0.57 วินาที)
ตอนนี้คุณสามารถแทรกบางระเบียนในตาราง แบบสอบถามมีดังนี้ −
mysql> แทรกลงในค่า selectDataOnYearandMonthDemo (101,'C in Depth',date_add(now(),interval -1 year));แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.50 วินาที)mysql> แทรกลงในค่า selectDataOnYearandMonthDemo (102, 'Let us C',date_add(curdate(),interval 1 year));แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงในค่า selectDataOnYearandMonthDemo (103,'SCJP Java','2018-12-5');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงในค่า selectDataOnYearandMonthDemo (104,'Introduction to C++','2016-4-5');Query OK, 1 แถวได้รับผลกระทบ (0.24 วินาที)
แสดงระเบียนทั้งหมดที่เราแทรกไว้ด้านบน แบบสอบถามเพื่อแสดงระเบียนทั้งหมดมีดังนี้ −
mysql> เลือก *จาก selectDataOnYearandMonthDemo;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+---------+--------------------------+---------------- -----+| รหัสหนังสือ | ชื่อหนังสือ | BookDueDate |+---------+--------------------------+----------------- ----+| 101 | C ในความลึก | 2017-12-05 21:44:20 || 102 | ให้เราซี | 2019-12-05 00:00:00 || 103 | SCJP Java | 2018-12-05 00:00:00 || 104 | ความรู้เบื้องต้นเกี่ยวกับ C++| 2016-04-05 00:00:00 |+-------+--------------------------+ -------- --------------+4 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามเพื่อเลือกปีและเดือน แบบสอบถามมีดังนี้ −
mysql> เลือก *จาก selectDataOnYearandMonthDemo โดยที่ YEAR(BookDueDate) =2019 AND MONTH (BookDueDate) =12;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+---------+----------+---------------------+| รหัสหนังสือ | ชื่อหนังสือ | BookDueDate |+-------+----------+---------------------+| 102 | ให้เราซี | 2019-12-05 00:00:00 |+-------+----------+------------------ ---+1 แถวในชุด (0.05 วินาที)