oracle中withingroup的用法
oracle中withingroup的⽤法
within group语句和group by没有半⽑钱关系,只是⼀些单值聚合函数的辅助关键字,下⾯以rank函数为例。
rank在oracle中分为聚合函数和分析函数两种,本篇不介绍分析函数,参考分析函数篇章。
聚合函数的rank语法为:rank(expr1,expr2) within group (order by expr3,expr4 [desc/asc] nulls [first/last])
表⽰计算以expr3,expr4为排序条件的结果集中,expr3=expr1 and expr4=expr2的记录排序号,返回为数字类型。排序为⾮紧凑排序,即前两条记录相同,那么排序号依次是1, 使⽤时⽆需⼀定要和group by搭配使⽤。
rank函数的用法
所谓触类旁通,只要知道within group在rank中的含义,那么和其他函数⼀起使⽤时,也就⽆师⾃通了。
可以使⽤within group关键字的函数有rank,dense_rank,PERCENT_RANK,PERCENTILE_CONT,PERCENTILE_DISC等

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。