日期和时间查询 - 问题

时间:2010-04-14 12:32:16

标签: sql-server-2008

我尝试运行此查询:

select * from WorkTbl
where ((Tdate >= '20100414' AND Ttime >= '06:00')  and (Tdate <= '20100415' AND Ttime <= '06:00'))

我有这个日期:2010年4月14日,时间:14:00

我看不到下摆,如何修复查询?

提前感谢

3 个答案:

答案 0 :(得分:0)

您是否尝试过格式化where子句中的日期,如下所示:

'DD/MM/YYYY'

答案 1 :(得分:0)

您当前的查询仅匹配Ttime正好06:00的行(即,这是唯一符合>= '06:00'<= '06:00条件的行。

尝试这样的事情:

SELECT *
FROM WorkTbl
WHERE (Tdate = '20100414' AND Ttime >= '06:00')
    OR (Tdate = '20100415' AND Ttime <= '06:00')

答案 2 :(得分:0)

SELECT *
FROM WorkTbl
WHERE (Tdate > '20100414' OR (Tdate == '20100414' AND Ttime >= '06:00'))
  AND (Tdate < '20100415' OR (Tdate == '20100415' AND Ttime <= '06:00'))