Để lấy dữ liệu lớn hơn hoặc bằng 1 ngày từ ngày hiện tại, hãy sử dụng khái niệm INTERVAL trong MySQL.
Ngày hiện tại như sau:
mysql> SELECT CURDATE(); +------------+ | CURDATE() | +------------+ | 2019-11-29 | +------------+ 1 row in set (0.00 sec)
Chúng ta sẽ tạo một bảng trước:
mysql> CREATE TABLE DemoTable1806 (
DueDate DATETIME
); Query OK, 0 rows affected (0.00 sec)
Chèn một số bản ghi vào bảng bằng lệnh INSERT:
mysql> INSERT INTO DemoTable1806 VALUES('2019-11-28'); Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1806 VALUES('2019-11-29'); Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1806 VALUES('2019-11-30'); Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1806 VALUES('2019-11-25'); Query OK, 1 row affected (0.00 sec)
Hiển thị tất cả bản ghi từ bảng bằng lệnh SELECT:
mysql> SELECT * FROM DemoTable1806;
Kết quả sẽ như sau:
+---------------------+ | DueDate | +---------------------+ | 2019-11-28 00:00:00 | | 2019-11-29 00:00:00 | | 2019-11-30 00:00:00 | | 2019-11-25 00:00:00 | +---------------------+ 4 rows in set (0.00 sec)
Dưới đây là truy vấn để chọn các hàng >= 1 ngày từ ngày hiện tại:
mysql> SELECT * FROM DemoTable1806 WHERE DueDate >= NOW() - INTERVAL 1 DAY;
Kết quả sẽ như sau:
+---------------------+ | DueDate | +---------------------+ | 2019-11-29 00:00:00 | | 2019-11-30 00:00:00 | +---------------------+ 2 rows in set (0.00 sec)