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

Chọn một cột nếu điều kiện được đáp ứng trong MySQL để tìm nạp các bản ghi từ ngày hiện tại và ngày hiện tại + 1

Trước tiên, hãy để chúng tôi lấy ngày hiện tại -

mysql> select curdate();

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

+------------+
| curdate()  |
+------------+
| 2019-12-15 |
+------------+
1 row in set (0.00 sec)

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

mysql> create table DemoTable1956
   (
   ProductId int,
   ProductName varchar(20),
   CustomerName varchar(20),
   ShippingDate date
   );
Query OK, 0 rows affected (0.00 sec)

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

mysql> insert into DemoTable1956 values(101,'Product-1','Sam','2019-10-11');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1956 values(102,'Product-2','Carol','2018-12-01');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1956 values(103,'Product-3','David','2019-12-15');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1956 values(104,'Product-4','Robert','2019-12-16');
Query OK, 1 row affected (0.00 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 DemoTable1956;

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

+-----------+-------------+--------------+--------------+
| ProductId | ProductName | CustomerName | ShippingDate |
+-----------+-------------+--------------+--------------+
|       101 | Product-1   | Sam          | 2019-10-11   |
|       102 | Product-2   | Carol        | 2018-12-01   |
|       103 | Product-3   | David        | 2019-12-15   |
|       104 | Product-4   | Robert       | 2019-12-16   |
+-----------+-------------+--------------+--------------+
4 rows in set (0.00 sec)

Đây là truy vấn để chọn một cột và tìm nạp các bản ghi ngày hiện tại và ngày tiếp theo -

mysql> select CustomerName from DemoTable1956 where ShippingDate IN(CURDATE(),CURDATE()+interval 1 Day);

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

+--------------+
| CustomerName |
+--------------+
| David        |
| Robert       |
+--------------+
2 rows in set (0.00 sec)