我需要一些關於SQL Query的幫助。SQL查詢不在兩個日期之間
我試圖從表test_table
中選擇所有不符合兩個日期'2009-12-15'和'2010-01-02'之間的記錄。
這是我的表結構:
`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'
我的查詢:
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
任何想法,爲什麼我的查詢選擇錯誤的記錄?我應該改變在查詢值的順序是這樣的:
start_date NOT BETWEEN CAST('2009-12-15' AS DATE) and CAST('2010-01-02' AS DATE)
非常感謝您的幫助
如果你把不在start_date之前它應該工作。 – brandonstrong 2017-01-30 15:43:00