ใช้ WHERE พร้อมเงื่อนไข OR เพื่อกรองข้อมูลตามเดือนและปีหลายช่วง
สร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
MonthNumber INT,
YearNumber INT
);
mysql> INSERT INTO DemoTable(MonthNumber, YearNumber) VALUES
(11, 2018), (3, 2019), (12, 2018), (1, 2019), (12, 2019), (6, 2018);
ดูข้อมูล
mysql> SELECT * FROM DemoTable;
+----+-------------+------------+
| Id | MonthNumber | YearNumber |
+----+-------------+------------+
| 1 | 11 | 2018 |
| 2 | 3 | 2019 |
| 3 | 12 | 2018 |
| 4 | 1 | 2019 |
| 5 | 12 | 2019 |
| 6 | 6 | 2018 |
+----+-------------+------------+
ค้นหา: (เดือน >= 11 และ ปี 2019) OR (เดือน <= 11 และ ปี 2018)
mysql> SELECT Id, MonthNumber, YearNumber FROM DemoTable
-> WHERE (MonthNumber >= 11 AND YearNumber = 2019)
-> OR (MonthNumber <= 11 AND YearNumber = 2018);
ผลลัพธ์
+----+-------------+------------+
| Id | MonthNumber | YearNumber |
+----+-------------+------------+
| 1 | 11 | 2018 |
| 5 | 12 | 2019 |
| 6 | 6 | 2018 |
+----+-------------+------------+
คำอธิบาย:
- แถว 1: เดือน 11 ≤ 11 และ ปี 2018 ✓
- แถว 5: เดือน 12 ≥ 11 และ ปี 2019 ✓
- แถว 6: เดือน 6 ≤ 11 และ ปี 2018 ✓