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

ตรวจสอบว่า DATETIME เท่ากับวันพรุ่งนี้หรือไม่ใน MySQL

ใช้ DATEDIFF() เปรียบเทียบกับ DATE_ADD(CURDATE(), INTERVAL 1 DAY)

สร้างตารางตัวอย่าง

mysql> CREATE TABLE DemoTable (
    -> ShippingDate DATETIME
    -> );

เพิ่มข้อมูลตัวอย่าง

mysql> INSERT INTO DemoTable VALUES('2019-07-01');
mysql> INSERT INTO DemoTable VALUES('2019-07-02');
mysql> INSERT INTO DemoTable VALUES('2019-07-03');
mysql> INSERT INTO DemoTable VALUES('2019-07-04');

แสดงข้อมูล

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+---------------------+
| ShippingDate        |
+---------------------+
| 2019-07-01 00:00:00 |
| 2019-07-02 00:00:00 |
| 2019-07-03 00:00:00 |
| 2019-07-04 00:00:00 |
+---------------------+

คำสั่งตรวจสอบว่าเท่ากับวันพรุ่งนี้ (สมมติวันนี้ 2019-07-01)

mysql> SELECT * FROM DemoTable
    -> WHERE DATEDIFF(ShippingDate, DATE_ADD(CURDATE(), INTERVAL 1 DAY)) = 0;

ผลลัพธ์ (ได้ 2019-07-02):

+---------------------+
| ShippingDate        |
+---------------------+
| 2019-07-02 00:00:00 |
+---------------------+

คำอธิบาย: DATE_ADD(CURDATE(), INTERVAL 1 DAY) = วันพรุ่งนี้ | DATEDIFF(date1, date2) = 0 หมายถึง date1 = date2 (เฉพาะส่วนวันที่)