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

Làm cách nào để kết hợp ngày và giờ từ các cột MySQL khác nhau để so sánh với toàn bộ DateTime?

Bạn có thể kết hợp ngày và giờ từ các cột MySQL khác nhau để so sánh với toàn bộ ngày giờ với sự trợ giúp của hàm CONCAT (). Cú pháp như sau -

 SELECT * FROM yourTableName WHERE CONCAT (yourDateColumnName, '', yourTimeColumnName)> 'yourDateTimeValue'; 

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

 mysql> tạo bảng DifferentDateTime -> (-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> ArrivalDate date, -> ArrivalTime time ->); Truy vấn OK, 0 hàng bị ảnh hưởng (1,53 giây) 

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -

 mysql> chèn vào giá trị OtherDateTime (Ngày đến, Thời gian đến) (curdate (), '10:27:30'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,14 giây) mysql> chèn vào giá trị OtherDateTime (Ngày đến, Thời gian đến) ( '2016-04-24', '15:00:00'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,18 giây) mysql> chèn vào giá trị OtherDateTime (Ngày đến, Thời gian đến) ('2015-12-25', '12:30:30 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,18 giây) mysql> chèn vào các giá trị Thời gian khác nhau (Ngày đến, Thời gian đến) (' 2012-01-31 ',' 16:00:30 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,11 giây) mysql> chèn vào các giá trị Thời gian khác nhau (Ngày đến, Thời gian đến) ('2000-07-12', '09:45:31'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,11 giây) 

Ví dụ

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

 mysql> select * from DifferentDateTime; 

Đầu ra

 + ---- + ------------- + ------------- + | Id | Ngày đến | Thời gian đến | + ---- + ------------- + ------------- + | 1 | 2019-02-14 | 10:27:30 || 2 | Ngày 24 tháng 4 năm 2016 | 15h00:00 || 3 | Ngày 12 tháng 12 năm 2015 | 12:30:30 || 4 | 2012-01-31 | 16:00:30 || 5 | 2000-07-12 | 09:45:31 | + ---- + ------------- + ------------- + 5 hàng được thiết lập (0,00 giây)  

Ví dụ

Đây là truy vấn để kết hợp ngày và giờ từ các cột khác nhau và so sánh với giá trị ngày giờ -

 mysql> select * from DifferentDateTime where concat (ArrivalDate, '', ArrivalTime)> '2007-01-31 12:30:30'; 

Đầu ra

 + ---- + ------------- + ------------- + | Id | Ngày đến | Thời gian đến | + ---- + ------------- + ------------- + | 1 | 2019-02-14 | 10:27:30 || 2 | Ngày 24 tháng 4 năm 2016 | 15h00:00 || 3 | Ngày 12 tháng 12 năm 2015 | 12:30:30 || 4 | 2012-01-31 | 16:00:30 | + ---- + ------------- + ------------- + 4 hàng được thiết lập (0,00 giây)