SQL查询两个日期之间的位置

时间:2014-02-21 08:42:21

标签: sql sql-server

我尝试在00:00到现在之间获取所有记录

E.g 2014年2月21日00:01至2014年2月21日10:41(现在时间)

 Select * from TableName Where Time >=???     and Time < Getdate()

4 个答案:

答案 0 :(得分:1)

Select * from TableName Where Time between ??? and Getdate()

答案 1 :(得分:0)

    Select * from TableName Where DateDiff(day,TimeColumn,getdate()) 

    between 0 and 0

答案 2 :(得分:0)

如果您使用的是SQL 2008或更高版本,则可以执行类似ff:

的操作
select * 
from tablename 
where cast([Time] as date) = getdate() 
    and cast([Time] as time) >= '10:41'

由于cast使谓词不具有SARGable,因此不具备超级性能。如果这是您经常想要做的事情,您可以将持久计算列添加到您的表中,为您执行强制转换。

答案 3 :(得分:0)

Select * from TableName Where Time between cast(GETDATE() as DATE) and Getdate()