Table of Contents
SQL 中的窗口功能是强大的工具,可以跨组表格行进行复杂的数据分析和计算,它们使用户能够执行运行总量,排名,移动平均值等操作,而不需要子表或临时表格.
理解窗口函数
窗口函数运行在与当前行相关的指定行范围上, 由 Over() 条款定义。 这样可以进行计算, 考虑数据分区内的多个行, 使分析更加有效和可读性更高 。
窗口函数的常见类型
- RANK()和DENSE RANK(): 分配排行到分区内.
- ROW NUMBER(:]]为每行提供独特的顺序编号.
- LEAD()和LAG():从后续或以前的行访问数据.
- SUM(, AVG(), MIN(), MAX():] 用于运行总计和平均值的窗口函数的集合函数.
实用应用
窗口功能被用于各种情景,如计算运行总量、建立排名和分析长期趋势。 这些功能在财务报告、销售分析和业绩衡量标准中尤其有用。
示例:计算运行总计
以下SQL查询显示如何计算每件产品的销售总量: