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

So sánh chuỗi DATE với chuỗi từ trường DATETIME của MySQL?

Bạn có thể so sánh chuỗi DATE với chuỗi từ trường DATETIME với sự trợ giúp của hàm DATE () trong MySQL. Cú pháp như sau -

select *from yourTableName where DATE(yourColumnName) = ’anyDateString’;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng và đặt một số giá trị ngày giờ trong bảng. Truy vấn tạo bảng -

mysql> create table DateTimeDemo
   −> (
   −> ArrivalTime datetime
   −> );
Query OK, 0 rows affected (0.61 sec)

Hãy để chúng tôi chèn một số bản ghi trong bảng với sự trợ giúp của lệnh insert. Sau đây là truy vấn để chèn bản ghi -

mysql> insert into DateTimeDemo values(now());
Query OK, 1 row affected (0.11 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 2 year));
Query OK, 1 row affected (0.47 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 1 year));
Query OK, 1 row affected (0.19 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 4 year));
Query OK, 1 row affected (0.13 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval -2 year));
Query OK, 1 row affected (0.17 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval -1 year));
Query OK, 1 row affected (0.17 sec)

Hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh select. Truy vấn để hiển thị tất cả các bản ghi từ bảng -

mysql> select *from DateTimeDemo;

Sau đây là kết quả -

+---------------------+
| ArrivalTime         |
+---------------------+
| 2018-12-06 10:12:45 |
| 2020-12-06 10:13:10 |
| 2019-12-06 10:13:21 |
| 2022-12-06 10:13:27 |
| 2016-12-06 10:13:42 |
| 2017-12-06 10:13:50 |
+---------------------+
6 rows in set (0.00 sec)

Bây giờ hãy triển khai cú pháp mà chúng ta đã thảo luận ở trên để so sánh chuỗi với trường thời gian ngày. Truy vấn như sau -

mysql> select *from DateTimeDemo where date(ArrivalTime) = '2022-12-06';

Sau đây là kết quả -

+---------------------+
| ArrivalTime         |
+---------------------+
| 2022-12-06 10:13:27 |
+---------------------+
1 row in set (0.14 sec)