Tôi cần trợ giúp về truy vấn SQL.Truy vấn SQL KHÔNG phải giữa hai ngày
Tôi đang cố gắng chọn tất cả các bản ghi từ bảng test_table
sẽ không khớp giữa hai ngày '2009-12-15' và '2010-01-02'.
Đây là cấu trúc bảng của tôi:
`start_date` date NOT NULL default '0000-00-00',
`end_date` date NOT NULL default '0000-00-00'
-----------------------------
**The following record should not be selected:**
`start_date`, `end_date`
'2003-06-04', '2010-01-01'
truy vấn của tôi:
SELECT *
FROM `test_table`
WHERE
CAST('2009-12-15' AS DATE) NOT BETWEEN start_date and end_date
AND
CAST('2010-01-02' AS DATE) NOT BETWEEN start_date and end_date
Bất cứ ý tưởng tại sao truy vấn của tôi chọn hồ sơ sai? Tôi có nên thay đổi thứ tự của các giá trị trong truy vấn đến một cái gì đó như:
start_date NOT BETWEEN CAST('2009-12-15' AS DATE) and CAST('2010-01-02' AS DATE)
Cảm ơn rất nhiều sự giúp đỡ nào
Nếu bạn đặt NOT trước ngày bắt đầu, nó sẽ hoạt động. – brandonstrong