我正在尝试使用下面的 SQL 查询从表中获取记录。
SELECT Code,Description FROM Table
WHERE ID= 1 AND FromDate >= '2010-02-14' AND ToDate <= '2012-03-14'
即使该日期存在记录,查询也不会返回任何内容。
ID HID HCode HDescription FromDate ToDate
-------------------------------------------------------------------
1 3 H8 New Year 2012-03-14 12:38:00 2012-03-14 12:38:00
请给我一个合适的解决方案。感谢您的宝贵时间!!
最佳答案
试试这个:
declare @dayAfter datetime --let take 1 day after
set @dayAfter = DateAdd(day,1,'20120314')
SELECT Code,Description FROM Table
WHERE ID= 1 AND
FromDate >= '20100214' AND
ToDate < DateAdd(day, DateDiff(day, 0, @dayAfter ), 0)
附:
DateAdd(day, DateDiff(day, 0, @dayAfter ), 0)
会将时间重置为 00:00
所以你需要desired EndTime < begining of the day after
关于带日期范围的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9783137/