1-group by分组函数之rollup与cube用法
ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。
CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。
详细查看:http://blog.itpub.net/519536/viewspace-610997/
2-oracle下lag和lead分析函数
lag(exp_str,offset,defval) over()
exp_str 指的是要做对比的字段。
offset 是exp_str字段的偏移量,即 offset 为N ,指的是在表中从当前行位置向前数N行就是我们所要找的那一行了
lead(exp_str,offset,defval) over()
exp_str 指的是要做对比的字段。
offset 是exp_str字段的偏移量,即 offset 为N ,指的是在表中从当前行位置向后数N行就是我们所要找的那一行了
select ename, job, sal,
lag(sal, 2, 500) over(order by sal) last_sal
from emp;
3-oracle下first_value()和last_value()
first函数和last函数可获得一个排序分组中的第一个值和最后一个值
https://www.cnblogs.com/sooner/p/7727942.html