3

我在尝试组合几个查询时有点卡住了。我得到的是包含某种统计信息和对另一个表的引用的表。

获取我正在运行的统计报告(短版):

SELECT COUNT(id) 
from [Actions] 
where date between '2012-01-01 00:00:00' AND '2012-01-01 23:59:59' 
  AND [Action]='request'

问题是如果我想在指定的时间段内获取每天的统计数据,这个查询应该是什么样子?我了解如果我更改开始日期和结束日期,我将获得整个指定期间的统计数据,而不是按天分组。我错过了什么?

4

1 回答 1

3

GROUP BY date在像这样消除时间部分之后:

SELECT 
  CONVERT(VARCHAR(10), [date], 121) ByDay, COUNT(id) 
FROM [Actions] 
WHERE date BETWEEN '2012-01-01 00:00:00' AND '2012-01-01 23:59:59' 
  AND [Action]='request'
GROUP BY CONVERT(VARCHAR(10), [date], 121)
于 2012-11-03T05:11:57.547 回答