如何获取时间戳在上午10点到现在之间的行数?

时间:2013-11-08 15:24:37

标签: sql-server

我正在尝试运行一个T-SQL查询,该查询将返回包含00:00:00之间的时间戳的所有行,以及现在任何给定日期的时间戳。

我使用了以下代码,但这只返回过去24小时内的项目:

SELECT *
FROM table
WHERE timestamp_closed =  DATE(GETDATE()-1);

5 个答案:

答案 0 :(得分:2)

SELECT *
FROM table
WHERE timestamp_closed BETWEEN CAST(GETDATE() AS DATE) AND GETDATE()

答案 1 :(得分:2)

这里有行数:

SELECT COUNT(*)
FROM *yourtable*
WHERE timestamp_closed BETWEEN CAST(GETDATE() AS DATE) AND GETDATE()

答案 2 :(得分:1)

您可以为“今天00:00:00”构建日期值,然后立即执行

WHERE timestamp_closed >= "Today at 00:00:00" and timestamp_closed<=GETDATE()

答案 3 :(得分:0)

SELECT *
FROM table
WHERE (timestamp_closed >  CAST(@specificDate AS DATE)
AND timestamp_closed <= GETDATE())

答案 4 :(得分:0)

你可以将它包装在一个函数中。

select * 
from table
where datepart(hh,timestamp_closed)*100 + datepart(mi,timestampclosed) < 
    datepart(hh,getdate())*100 + datepart(mi,getdate())