คิวรี่ข้อมูลย้อนหลัง 6 เดือนจากตารางข่าว
ใช้ฟังก์ชัน DATE_SUB() ร่วมกับ NOW() หรือ CURDATE() เพื่อคำนวณวันที่ 6 เดือนก่อนหน้า
รูปแบบคำสั่ง (Syntax)
SELECT * FROM yourTableName
WHERE yourDateTimeColumn >= DATE_SUB(NOW(), INTERVAL 6 MONTH);
ตัวอย่างการใช้งาน
สร้างตาราง Newstable:
CREATE TABLE Newstable (
NewsId INT,
NewsDatetime DATETIME
);
เพิ่มข้อมูล:
INSERT INTO Newstable VALUES
(101, '2018-02-10'),
(102, '2018-12-10'),
(103, '2018-03-14'),
(104, '2018-12-12'),
(105, '2018-04-21'),
(106, '2018-06-30');
สมมติวันนี้คือ 2018-12-20 คิวรี่ 6 เดือนย้อนหลัง:
SELECT * FROM Newstable
WHERE NewsDatetime > DATE_SUB(NOW(), INTERVAL 6 MONTH);
ผลลัพธ์ (ข่าวตั้งแต่ 2018-06-20 ถึง 2018-12-20):
| NewsId | NewsDatetime |
|---|---|
| 102 | 2018-12-10 00:00:00 |
| 104 | 2018-12-12 00:00:00 |
| 106 | 2018-06-30 00:00:00 |
เคล็ดลับ: ใช้ INTERVAL 6 MONTH สำหรับเดือน, INTERVAL 30 DAY สำหรับวัน, INTERVAL 1 YEAR สำหรับปี