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

Truy vấn MySQL để chọn ngày> =ngày hiện tại - 3 tuần?

Sử dụng khái niệm DATE_SUB (). Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   (
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   ArrivalDate datetime
   );
Query OK, 0 rows affected (1.02 sec)

Lưu ý :Giả sử ngày hiện tại là 2019-06-08

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

mysql> insert into DemoTable(ArrivalDate) values('2019-05-15');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable(ArrivalDate) values('2019-06-08');
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable(ArrivalDate) values('2019-05-20');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable(ArrivalDate) values('2019-05-12');
Query OK, 1 row affected (0.12 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 DemoTable;

Đầu ra

+----+---------------------+
| Id | ArrivalDate         |
+----+---------------------+
| 1  | 2019-05-15 00:00:00 |
| 2  | 2019-06-08 00:00:00 |
| 3  | 2019-05-20 00:00:00 |
| 4  | 2019-05-12 00:00:00 |
+----+---------------------+
4 rows in set (0.00 sec)

Đây là truy vấn để chọn ngày lớn hơn ngày hiện tại - 3 tuần -

mysql> select ArrivalDate from DemoTable where ArrivalDate> DATE_SUB(curdate(),INTERVAL 3 WEEK);

Đầu ra

+---------------------+
| ArrivalDate         |
+---------------------+
| 2019-06-08 00:00:00 |
| 2019-05-20 00:00:00 |
+---------------------+
2 rows in set (0.00 sec)