SQL查询以获取时间范围内的项目计数

时间:2014-05-13 13:47:10

标签: sql sql-server-2008

我需要一个SQL查询的帮助,这个查询会让我计算特定日期帐户的每小时存款。该数据库包括存款和存入各种账户的时间。我需要一个查询,它会按小时返回某个帐户的存款号码。理想情况下,结果看起来像这样:

MM / DD / YYYY帐户XYZ:

12:00 PM:3

下午1:00:5

下午2:00:7

3:00 PM; 11

*格式化并不重要,只要我能获得此信息。

2 个答案:

答案 0 :(得分:0)

您可以使用日期/时间功能进行聚合。在您的情况下,这看起来像:

select cast(DepositDate as date), datepart(hour, DespositDate), count(*)
from table t
where account = 'XYZ'
group by cast(DepositDate as date), datepart(hour, DespositDate);

答案 1 :(得分:0)

尝试:

DECLARE @CheckDate DATE
SET @CheckDate='2014/5/13'
SELECT DATEPART(hh, DespositDate), COUNT(1)
FROM table t
WHERE account = 'XYZ' AND CAST(DepositDate AS DATE)=@CheckDate
GROUP BY DATEPART(hh, DespositDate)