Vì vậy, tôi có điều này:SQL giữa ngày kể cả bắt đầu và ngày kết thúc
(CURDATE() BETWEEN start_date AND end_date)
trình tốt.
Nhưng khi CURDATE()
là 2011-12-02 và end_date
là 2011-12-02 nó sẽ lấy hàng?
Ví dụ start_date của tôi là 2011/12/01 00:00:00 và ngày kết thúc của tôi là 2011-12-02 23:59:59
Vì vậy, nó chỉ hoạt động khi ngày là giữa nhưng không nếu nó Trên chính bản thân số end_date
.
Hoặc có thể cũng nên kiểm tra thời gian, vì nó vẫn cần phải được chọn với truy vấn này khi đó là 2011-12-02 15:30:00 chẳng hạn.
Tôi làm cách nào để thực hiện việc này?
Vâng câu trả lời rõ ràng là để trừ đi 1 ngày từ 'start_date 'và thêm 1 ngày vào' end_date', nhưng tôi không đăng câu trả lời này vì câu trả lời có thể là một giải pháp thay thế SQL tốt hơn. – DaveRandom
@dave, một người khác đã làm! –
giữa các phương tiện không bao gồm bắt đầu và kết thúc để kết quả là chính xác. Vì vậy, nó chỉ hoạt động khi ngày là giữa nhưng không phải nếu nó là ngày chính nó. –