使用分析函数进行行列转换
SQL> SELECT deptno, ename, 2 ROW_NUMBER () OVER (PARTITION BY deptno ORDER BY sal DESC) seq 3 FROM emp; DEPTNO ENAME SEQ ---------- ---------- ---------- 10 KING 1 10 CLARK 2 10 MILLER 3 20 SCOTT 1 20 FORD 2 20 JONES 3 20 ADAMS 4 20 SMITH 5 30 BLAKE 1 30 ALLEN 2 30 TURNER 3 30 WARD 4 30 MARTIN 5 30 JAMES 6 14 rows selected.
再结合其他函数进行一下行列转换:
SQL> select deptno, 2 max(decode(seq,1,ename,null)) highest, 3 max(decode(seq,2,ename,null)) second, 4 max(decode(seq,3,ename,null)) third 5 from ( 6 select deptno,ename, 7 row_number() over 8 (partition by deptno order by sal desc) seq 9 from emp) 10 where seq <=3 group by deptno 11 / DEPTNO HIGHEST SECOND THIRD ---------- ---------- ---------- ---------- 10 KING CLARK MILLER 20 SCOTT FORD JONES 30 BLAKE ALLEN TURNER
这个结果基本上还是差强人意的。
使用分析函数进行行列转换相关推荐
- 用ORACLE分析函数实现行列转换
摘 要 对数据库中的数据用SQL实现行列转换,不但需要编写复杂的程序代码,还需要编写存储过程.若引入ORACLE中的分析函数则会使该过程简便很多.首先找出表中所有关键字的属性个数的最大值,设为n,其次 ...
- oracle行列转换总结
最近论坛很多人提的问题都与行列转换有关系,所以我对行列转换的相关知识做了一个总结, 希望对大家有所帮助,同时有何错疏,恳请大家指出, 我也是在写作过程中学习,算是一起和大家学习吧. 行列转换包括以下六 ...
- Oracle 行列转换
Oracle 行列转换 1.固定列数的行列转换 如 student subject grade --------- ---------- -------- student1 语文 80 student ...
- oracle中行列转换总结
oracle中行列转换 1.行列转换包括以下六种情况: 2. 列转行 2.1 UNION ALL 2.2 MODEL 2.3 COLLECTION 2.4 UNPIVOT 3. 行转列 3.1 AGG ...
- Oracle如何实现动态行列转换,Oracle实现行列转换的方法分析
本文实例讲述了Oracle实现行列转换的方法.分享给大家供大家参考,具体如下: 1.固定列数的行列转换 如: sql;"> student subject grade -------- ...
- Hive-day06基本函数_窗口函数_行列转换_UDF_连续登录问题
hive-基本函数_窗口函数_行列转换_UDF_连续登录问题 目录 hive-基本函数_窗口函数_行列转换_UDF_连续登录问题 SQL练习 hive语句的执行顺序 from-->join--& ...
- [转载]SQL Server行列转换实现
一.Pivot和UnPivot介绍 1.Pivot介绍 PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVO ...
- SQL Server 行列转换(2)
参考前一个例子http://www.cnblogs.com/insus/articles/1969896.html,现想使用另外一种方式来处理行列转换,实现下面效果: 参考代码: View Code ...
- Oracle 行列转换总结
行列转换包括以下六种情况: *列转行 *行转列 *多列转换成字符串 *多行转换成字符串 *字符串转换成多列 *字符串转换成多行 下面分别进行举例介绍. 首先声明一点,有些例子需要如下10g及以后才有的 ...
最新文章
- Android之文件数据存储
- WIFI搜索的到别人,却找不到自己家的wifi
- 控制台和Win32 API程序输出变量地址值
- 【Zabbix】配置 腾讯企业邮箱 发送报警邮件
- 将变量区分_【统计学】区分定类、定序、定距、定比变量!
- 【Maven学习笔记(二)】Maven的安装与配置
- golang web服务器_使用Go制作自己的Web服务器:快速指南
- mariadb mysql 配置文件_Mariadb配置文件优化参数(仅供参考)
- Nginx源码分析 - Event事件篇 - Event模块和配置的初始化(16)
- 在 Angular 8 中,我们可以期待些什么
- 全面质量管理体系方案
- #低码系列#如何设计一个低代码平台?
- 计算机检索的主要方法,计算机检索主要途径和方法
- 谷歌浏览器清除百度广告
- PowerMILL 2018四五轴编程后处理宏制作视频教程
- ubantu下QT连接数据库mysql
- MySQL学习笔记(持续更新ING)
- Python入门学习(五)
- go 库 viper 配置解析神器
- go-gorilla的ping pong