sql打卡复习第五篇
本笔记为阿里云天池龙珠计划SQL训练营的学习内容,链接为:https://tianchi.aliyun.com/specials/promotion/aicampsql;
6.高级语句
1.窗口函数
1.概念
窗口函数也称为OLAP函数。OLAP 是OnLine AnalyticalProcessing 的简称,意思是对数据库数据进行实时分析处理。
2.形式
<窗口函数> OVER ([PARTITION BY <列名>]
ORDER BY <排序用列名>)
3.举例
班级成绩表 现在想同将 男生的成绩排行 和女生的成绩排行 一起显示出来
4.窗口函数的分类
一是 将SUM、MAX、MIN等聚合函数用在窗口函数中
二是 RANK、DENSE_RANK等排序用的专用窗口函数
rank 标注 第几位 rank 1 1 1 4 DENSE_RANK 1 1 1 2
ROW_NUMBER 1 2 3 4
5.注意点
原则上 窗口函数只能在SELECT子句中使用。
窗口函数OVER 中的ORDER BY 子句并不会影响最终结果的排序。其只是用来决定窗口函数按何种顺序计算。
2.GROUPING运算符
1.ROLLUP - 计算合计及小计
可通过SUM 对分组后的数据进行小计
WITH ROLLUP 进行合计