按时间范围汇总数据
SQL Server 提供了多种有用的聚合函数,帮助我们按时间范围汇总数据并获得洞见。下面的示例中,您将查看一家虚构公司的事件报告数据。事件已经按日粒度汇总,得到每种类型在每天的事件数量。我们希望进一步分析,回顾 8 月 1 日至 10 月 31 日这 3 个月内的事件,并通过聚合获得基本洞察。
本练习将使用的关键聚合函数包括 COUNT()、SUM()、MIN() 和 MAX()。在下一个练习中,我们将查看一些统计类的聚合函数。
本练习是课程的一部分
SQL Server 中的时间序列分析
练习说明
- 根据列名填写合适的聚合函数。每处在
COUNT()、SUM()、MIN()、MAX()中选择一个。
交互式实操练习
通过完成这段示例代码来试试这个练习。
-- Fill in the appropriate aggregate functions
SELECT
it.IncidentType,
___(1) AS NumberOfRows,
___(ir.NumberOfIncidents) AS TotalNumberOfIncidents,
___(ir.NumberOfIncidents) AS MinNumberOfIncidents,
___(ir.NumberOfIncidents) AS MaxNumberOfIncidents,
___(ir.IncidentDate) As MinIncidentDate,
___(ir.IncidentDate) AS MaxIncidentDate
FROM dbo.IncidentRollup ir
INNER JOIN dbo.IncidentType it
ON ir.IncidentTypeID = it.IncidentTypeID
WHERE
ir.IncidentDate BETWEEN '2019-08-01' AND '2019-10-31'
GROUP BY
it.IncidentType;