Hướng dẫn mysql match date without time - ngày khớp mysql không có thời gian

Tôi cần so sánh ngày trong MySQL bỏ qua phần thời gian trong cột SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 0. Tôi đã thử SQL sau đây.

SELECT * FROM order_table where order_date=date_format('2012-05-03', '%Y-%m-%d');

Nó không lấy lại bất kỳ hàng nào mặc dù có một ngày SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 1 trong bảng MySQL. Làm thế nào phần thời gian trong trường SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 0 có thể bị bỏ qua trong khi so sánh ngày trong MySQL?

Khi được hỏi ngày 27 tháng 5 năm 2012 lúc 19:10May 27, 2012 at 19:10

Nho nhỏTiny

26.5K102 Huy hiệu vàng322 Huy hiệu bạc590 Huy hiệu Đồng102 gold badges322 silver badges590 bronze badges

1

Bạn có thể sử dụng chức năng SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 3:

SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03'

Nhưng điều này hiệu quả hơn, nếu bảng của bạn lớn và bạn có một chỉ mục trên SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 4:

SELECT col1, col2, ..., coln FROM order_table WHERE order_date >= '2012-05-03' AND order_date < '2012-05-04'

Nhỏ xíu

26.5K102 Huy hiệu vàng322 Huy hiệu bạc590 Huy hiệu Đồng102 gold badges322 silver badges590 bronze badges

Bạn có thể sử dụng chức năng SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 3:May 27, 2012 at 19:12

Nhưng điều này hiệu quả hơn, nếu bảng của bạn lớn và bạn có một chỉ mục trên SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 4:Mark Byers

Nhỏ xíu188 gold badges1553 silver badges1440 bronze badges

1

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:12

where YEAR(order_date)='2012' AND MONTH(order_date)='05' AND DAY(order_date)='03'

Mark Byersmark Byers

Nhỏ xíu

26.5K102 Huy hiệu vàng322 Huy hiệu bạc590 Huy hiệu Đồng102 gold badges322 silver badges590 bronze badges

Bạn có thể sử dụng chức năng SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 3:May 27, 2012 at 19:17

Nhưng điều này hiệu quả hơn, nếu bảng của bạn lớn và bạn có một chỉ mục trên SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 4:James Black

Nhỏ xíu9 gold badges85 silver badges163 bronze badges

SELECT * FROM order_table WHERE date(order_date) = '2012-05-03';

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:12May 27, 2012 at 19:13

Mark Byersmark Byerslanzz

787K188 Huy hiệu vàng1553 Huy hiệu bạc1440 Huy hiệu đồng10 gold badges86 silver badges95 bronze badges

1

Nếu bạn muốn vượt qua một ngày thì bạn có thể thử một cái gì đó như thế này:

WHERE order_date >= '2012-05-27 00:00:00' AND order_date <= '2012-05-27 23:59:59'

Bạn có thể xem xét điều này cho nhiều chức năng hơn.

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:17May 27, 2012 at 19:51

James Blackjames đendeej

41.3k9 Huy hiệu vàng85 Huy hiệu bạc163 Huy hiệu Đồng4 gold badges28 silver badges51 bronze badges

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:13

SELECT * FROM order_table where date_format(order_date, '%Y-%m-%d')='2012-05-03';

LanszzzzzJun 22, 2017 at 12:15

40.8k10 Huy hiệu vàng86 Huy hiệu bạc95 Huy hiệu Đồng

SELECT * FROM order_table WHERE order_date between('2012-05-03 0:0:0' and '2012-05-03 23:59:59')

Nhỏ xíu

26.5K102 Huy hiệu vàng322 Huy hiệu bạc590 Huy hiệu Đồng102 gold badges322 silver badges590 bronze badges

Bạn có thể sử dụng chức năng SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 3:May 27, 2012 at 19:20

Nhưng điều này hiệu quả hơn, nếu bảng của bạn lớn và bạn có một chỉ mục trên SELECT col1, col2, ..., coln FROM order_table WHERE date(order_date) = '2012-05-03' 4:

DATEDIFF() Subtract two dates TIMEDIFF() Subtract time TIMESTAMPDIFF() Subtract an interval from a datetime expression PERIOD_DIFF() Return the number of months between periods

Nhỏ xíu

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:12Sep 21, 2016 at 11:12

Mark Byersmark ByersAugustas

787K188 Huy hiệu vàng1553 Huy hiệu bạc1440 Huy hiệu đồng23 silver badges30 bronze badges

Nếu bạn muốn vượt qua một ngày thì bạn có thể thử một cái gì đó như thế này:

Bạn có thể xem xét điều này cho nhiều chức năng hơn.

DATE_FORMAT(CONVERT_TZ(`order_item`.created, '+0:00', '+2:00'), '%d/%m/%Y %H:%i') BETWEEN ('12/02/2018 01:42') AND ('12/02/2018 10:51')

Đã trả lời ngày 27 tháng 5 năm 2012 lúc 19:17Feb 21, 2018 at 16:54

James Blackjames đenshareef

41.3k9 Huy hiệu vàng85 Huy hiệu bạc163 Huy hiệu Đồng13 gold badges58 silver badges88 bronze badges

Làm cách nào tôi có thể so sánh ngày và ngày hiện tại trong cơ sở dữ liệu MySQL?

Hàm getDate (): Hàm này được sử dụng để trả về ngày và thời gian hiện tại của hệ thống cơ sở dữ liệu ...
Ít hơn- nếu ngày ít hơn ngày hôm nay ..
Lớn hơn- Nếu ngày lớn hơn ngày hôm nay ..
Hôm nay- nếu ngày giống như ngày hôm nay ..

Làm thế nào tôi có thể so sánh hai trường ngày trong MySQL?

Để đếm sự khác biệt giữa ngày trong MySQL, hãy sử dụng hàm Datediff (Enddate, StartDate).Sự khác biệt giữa startdate và enddate được thể hiện trong ngày.use the DATEDIFF(enddate, startdate) function. The difference between startdate and enddate is expressed in days.

Làm thế nào có thể nhận được ngày ở định dạng dd mm yyyy trong mysql?

Sau đây là đầu ra.Sau đây là truy vấn định dạng ngày đến Yyyy-MM-DD.mysql> chọn str_to_date (logindate, '%d.%m.mysql> select str_to_date(LoginDate,'%d. %m.

DATE_ADD trong mysql là gì?

Hàm date_add () thêm khoảng thời gian/ngày vào một ngày và sau đó trả về ngày.adds a time/date interval to a date and then returns the date.

Chủ đề