Computer >> Máy Tính >  >> Lập trình >> MySQL

Truy vấn MySQL để tìm nạp các bản ghi trước ngày hiện tại + 2 tuần?

Đối với điều này, hãy sử dụng cú pháp dưới đây -

select * from yourTableName where yourColumnName < DATE_ADD(CURDATE(), INTERVAL 2 WEEK);

Lưu ý:Ngày hiện tại như sau -

mysql> select curdate();
+------------+
| curdate()  |
+------------+
| 2019-10-20 |
+------------+
1 row in set (0.00 sec)

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1607
   -> (
   -> ShippingDate date
   -> )
   -> ;
Query OK, 0 rows affected (0.58 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable1607 values('2019-10-20');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable1607 values('2019-11-04');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable1607 values('2019-10-05');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1607 values('2019-09-21');
Query OK, 1 row affected (0.18 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select * from DemoTable1607;

Điều này sẽ tạo ra kết quả sau -

+--------------+
| ShippingDate |
+--------------+
| 2019-10-20   |
| 2019-11-04   |
| 2019-10-05   |
| 2019-09-21   |
+--------------+
4 rows in set (0.00 sec)

Đây là truy vấn để tìm nạp các bản ghi có ngày trước ngày hiện tại + 2 tuần -

mysql> select * from DemoTable1607 where ShippingDate <DATE_ADD(CURDATE(), INTERVAL 2 WEEK);

Điều này sẽ tạo ra kết quả sau -

+--------------+
| ShippingDate |
+--------------+
| 2019-10-20   |
| 2019-10-05   |
| 2019-09-21   |
+--------------+
3 rows in set (0.06 sec)