概述
1.窗口函数
窗口函数:应用在窗口的函数,限定一个空间范围
窗口:记录集合,满足某种条件的记录集合上执行的特殊函数
基本用法:
函数名([expr]) over 子句
函数() over()
over用于指定窗口的执行范围,包含三个分析子句
函数名([expr])over(partition by <要分组的列>) order by <要排序的列> rows between<数据范围>)
rows between 2 preceding and current row #取当前行和前面两行
rows between unbounded preceding and current row #包括本行和之前所有的行
rows between current row and unbounded following #包括本行和之后的所有行
rows between 3 preceding and 1 following #从前面三行和下面一行,总共五行
#order by 后面缺少窗口从句条件,窗口默认规范是rows between unbounded preceding and current row. 当前行和之前
#当order by 和窗口从句都缺失,窗口规范默认是rows between unbounded preceding and unbounded following 所有的数据
2.排序函数
row_number():序号不重复,序号连续
rank():序号可以重复,序号不连续
dense_rank():序号可以重复,序号连续
3.聚合函数实现滑动窗口计算
4.lag、lead函数求增长率(环比、同比)
5.top10%的商品
最后
以上就是受伤电脑为你收集整理的SQL学习——窗口函数的全部内容,希望文章能够帮你解决SQL学习——窗口函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复