电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

oracle分组排序VIP免费

oracle分组排序_第1页
1/7
oracle分组排序_第2页
2/7
oracle分组排序_第3页
3/7
分组函数 oracle 分析函数十分强大,我们只要掌握这些方法,更直接的说法就是知道这些分析函数的作用就能完成很多工作。 下边贴出这些函数,及简单应用。 其中我想对lag()和lead()函数坐下说明:lag()本身是延后的意思也就是延后出现某列的数,而lead()有引领、领先的意思也就是提前几行显示某列数据 RANK() dense_rank() 【语法】RANK ( ) OVER ( [query_partition_clause] order_by_clause ) dense_RANK ( ) OVER ( [query_partition_clause] order_by_clause ) 【功能】聚合函数RANK 和 dense_rank 主要的功能是计算一组数值中的排序值。 【参数】dense_rank 与 rank()用法相当, 【区别】dence_rank 在并列关系是,相关等级不会跳过。rank 则跳过 rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内) dense_rank()l 是连续排序,有两个第二名时仍然跟着第三名。 【说明】Oracle 分析函数 【示例】 聚合函数RANK 和 dense_rank 主要的功能是计算一组数值中的排序值。 在 9i 版本之前,只有分析功能(analytic ),即从一个查询结果中计算每一行的排序值,是基于 order_by_clause 子句中的value_exprs 指定字段的。 其语法为: RANK ( ) OVER ( [query_partition_clause] order_by_clause ) 在 9i 版本新增加了合计功能(aggregate),即对给定的参数值在设定的排序查询中计算出其排序值。这些参数必须是常数或常值表达式,且必须和ORDER BY 子句中的字段个数、位置、类型完全一致。 其语法为: RANK ( expr [, expr]... ) WITHIN GROUP ( ORDER BY expr [ DESC | ASC ] [NULLS { FIRST | LAST } ] [, expr [ DESC | ASC ] [NULLS { FIRST | LAST } ]]... ) 例子 1: 有表Table 内容如下 COL1 COL2 1 1 2 1 3 2 3 1 4 1 4 2 5 2 5 2 6 2 分析功能:列出Col2 分组后根据Col1 排序,并生成数字列。比较实用于在成绩表中查出各科前几名的信息。 SELECT a.*,RANK() OVER(PARTITION BY col2 ORDER BY col1) "Rank" FROM table a; 结果如下: COL1 COL2 Rank 1 1 1 2 1 2 3 1 3 4 1 4 3 2 1 4 2 2 5 2 3 5 2 3 6 2 5 例子 2: TABLE:A (科目,分数) 数学,80 语文,70 数学,90 数学,60 数学,100 语文,88 语文,65 语...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

oracle分组排序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部