我需要一些有关 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)
非常感谢您的帮助