oracle unpivot 索引_oracle 11g 行列转换之unpivot、pivot

一、    列    转    行

create table STU_ROW2COL

(

id      VARCHAR2(10),

intname VARCHAR2(10),

subject VARCHAR2(20),

grade   NUMBER

)

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('1', 'ZORRO', '语文', 70);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('2', 'ZORRO', '数学', 80);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('3', 'ZORRO', '英语', 75);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('4', 'SEKER', '语文', 65);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('5', 'SEKER', '数学', 75);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('6', 'SEKER', '英语', 60);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('7', 'BLUES', '语文', 60);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('8', 'BLUES', '数学', 90);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('9', 'PG', '数学', 80);

insert into stu_row2col (ID, INTNAME, SUBJECT, GRADE) values ('10', 'PG', '英语', 90);

SQL>  select t.* from stu_row2col t ;

ID         INTNAME    SUBJECT                   GRADE

---------- ---------- -------------------- ----------

11         ZORRO      语文                         77

1          ZORRO      语文                         70

2          ZORRO      数学                         80

3          ZORRO      英语                         75

4          SEKER      语文                         65

5          SEKER      数学                         75

6          SEKER      英语                         60

7          BLUES      语文                         60

8          BLUES      数学                         90

9          PG         数学                         80

10         PG         英语                         90

想要实现行专列, 就是输出结果是这样的:

SQL>  select * from ( select t.intname,t.subject,t.grade from stu_row2col t)

pivot(sum(grade) for subject in ('语文' 语文,'数学' 数学,'英语' 英语))  ;

INTNAME            语文         数学         英语

---------- ---------- ---------- ----------

SEKER              65         75         60

BLUES              60         90

PG                            80         90

ZORRO             147         80         75

二、    行    转    列

创建一个视图:

create or replace view stu_col2row as

select "INTNAME","语文","数学","英语" from ( select t.intname,t.subject,t.grade from stu_row2col t) pivot(sum(grade) for subject in ('语文' 语文,'数学' 数学,'英语' 英语));

SQL>  select INTNAME 姓名,km 科目, fs 分数 from stu_col2row unpivot(fs for km in(语文,数学,英语));

姓名       科目         分数

---------- ---- ----------

SEKER      语文         65

SEKER      数学         75

SEKER      英语         60

BLUES      语文         60

BLUES      数学         90

PG         数学         80

PG         英语         90

ZORRO      语文         70

ZORRO      数学         80

ZORRO      英语         75

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/244285.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙系统下拉菜单,鸿蒙的js开发部模式17:鸿蒙的系统能力的应用模块

1. 鸿蒙的系统能力主要涉及通知消息模块,在模拟器中也可以实践和获取初始界面:点击发送通知,顶部出现通知消息的图标下拉通知菜单栏,出现通知信息:js的业务逻辑代码:import notification from system.notification;no…

win7开启uasp协议_UASP与USB模式切换工具(SwitchUA官方版下载_UASP与USB模式切换工具(SwitchUASP) v1.0免费版 - Win7旗舰版...

UASP与USB模式切换工具(SwitchUASP)是一款能够帮助用户将系统的USB3.0传输模式切换到UASP模式的软件,利用软件能够有效的提升用户的电脑传输速度,有需要的可以下载使用。功能介绍UASP模式可以让USB的速度增加不少,特别是小文件的处理速度在us…

华为 原生android 6.0,安卓6.0原生桌面轻体验,我的手机从未如此流畅过

本帖最后由 啷个里格弄 于 2016-12-30 13:05 编辑1.png (188.33 KB, 下载次数: 65)2016-4-29 18:21 上传▏写在开头P8的EMUI系统或者称之为桌面在功能性和流畅度上都给我留下不错的印象。但是成天盯着一款桌面难免“七年之痒”,楼主这边就来给大家的P8换换口味&…

大数据职业理解_到底什么是大数据,大数据职业的具体工作内容是什么?

综合网络解释加上自己的理解给出了大数据的定义。大数据就是数据规模达到海量级、极快的速度流转、数据类型和来源多种多样、价值密度低而且能够反映事物真实性的数据就是大数据。大数据的工作内容包括以下几个方面:数据采集调查显示,未被使 用的信息比例…

兼容ios和android的ar,安卓又落后 这几款AR游戏只能iOS玩

近日苹果正式推送iOS 11,很多AR应用也随之上线。iOS 11一个很重要的亮点就是AR增强现实,利用它用户可以实现很多前所未有的体验,比如将室内的环境与游戏融为一体;还能测量距离。想知道你喜欢的明星身高吗?打开Measure这…

群晖如何建php网站_群晖折腾 篇一:群晖Web Station 功能搭建属于自己的照片分享网站...

群晖折腾 篇一:群晖Web Station 功能搭建属于自己的照片分享网站2020-03-03 16:42:1514点赞83收藏11评论小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限,点击查看活动详情创作立场声明&…

dilink智能网联系统鸿蒙系统,【图】秦Pro DM DiLink智能网联系统实测解读_汽车江湖...

一辆天天接触的车对于车主而言,早已不是一辆车这么简单了,更多时候它还充当我们的“好伙伴”甚至是“知己”,多少人下班停好车以后不愿意下车?因为他们知道这是一个分界点:推开车门你就是柴米油盐、是父亲、是儿子、是…

卓越性能代码_装好win10后,应该这样设置,才能压榨出系统十足的性能

用了这么久win10系统,你知道在win10中有不同的性能模式吗?而使用不同的性能模式会消耗不同的电量,就会为系统提供不同的性能。为了拥有好的性能,我们一般会在电源选项中给系统设置为高性能模式,但你以为这就够了吗&…

html语言中的转行标记是6,网页设计与制作模拟试题

全国2004年7月高等教育自学考试网页设计与制作试题网页设计与制作模拟试题一、 单项选择题(每空1分,共10分)1.目前在Internet上应用最为广泛的服务是( )。A.FTP服务 B.WWW服务 C.Telnet服务 D.Gopher服务2.在域名系统中,域名采用( )。A.树型命名机制 B.星…

swoolephp加密_PHP中给源代码加密的几种方法

商业使用推荐 Swoole Compiler 代码加密以下是如何通过PHP的自定义函数来加密我们的PHP源代码方法一function encode_file_contents($filename) {$typestrtolower(substr(strrchr($filename,.),1));if (php $type && is_file($filename) && is_writable($file…

将html保存为图片,html2canvas 将html代码转为图片并保存下来

html2canvas 将html代码转为图片并保存下来发布时间:2018-05-22 10:15,浏览次数:421, 标签:htmlcanvas只是测试了下,在 谷歌和360上都可以,但是在火狐和ie下面暂时没有效果,所以先做个小记录,等…

产品配件类目税目分类_我国消费税税目种类有哪些?

在日常生活中我们接触到的商品,比如:烟、酒、汽车、贵重首饰及珠宝玉石、鞭炮焰火等等,其实在法律上都是需要交纳消费税的,这也就导致了这些商品在不同区域存在不同的价格这一现象。那么,我国消费税税目种类有哪些呢?…

raid 物理盘缓存状态_服务器raid卡、磁盘缓存的配置策略

最近遇到不少因服务器异常断电,导致文件系统元数据等被破坏的问题,究其原因是磁盘缓存没有关闭。不再重复码字了,直接贴图:所以带raid卡、磁盘服务器环境的推荐配置为:1 商用环境,RAID一定要有超级电容&…

主管护士需要考计算机和英语吗,2020主管护师改为机考,一定要注意这些问题!...

原标题:2020主管护师改为机考,一定要注意这些问题!中国卫生人才网官方通知已确定,2020年护理学中级既主管护师考试形式-推行机考。那么,人机对话考试怎么考,有什么注意事项,为考生整理如下&…

pythonflask configlist.py_Python+Flask.0004.FLASK配置管理之三种方式加载外部配置

简单介绍:说明: 复杂的项目需要配置各种环境,若设置少可直接硬编码,设置多的话可通过加载配置/加载文件/加载变量的方式来设置123app.config.update(DEBUGTrue,)扩展: app.config是flask.config.Config类的实例,继承子PY内置数据结构dict,所以可以使用如上update方法,支持传入多…

html引用c 变量,在jsp页面中定义全局变量,供其他页面引用

一、在一个jsp中引用另一个jsp的方法有:1.使用 jsp include指令(常用):file属性是必填的(绝对或相对路径),但它不支持任何的表达式,也不允许通过?挂参方式来传递参数。注意:一般页面的top和bottom固定的时候…

bootstraptable控制分页_bootstrap table分页(前后端两种方式实现)

bootstrap table分页的两种方式:前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页)服务器分页:每次只查询当前页面加载所需要的那几条数据bootstrap 下载地址&#x…

gitlab 构建tag_GitLab常用命令 分支 Tag 配置 操作

一、从SVN迁出到本地Git仓库(还没有配置Git仓库的,直接看第八条)git svn clone "" ##注意路径需要双引号引起来二、在远程仓库中新建对应名称的项目http://git.xxx.cn (公司的gitlab地址)三、将远程仓库项目与本地仓库代码做好映射1. 建立…

html表单赋值提交,jQuery自动给表单赋值

/** jquery 初始化form插件,传入一个json对象,为form赋值* version: 1.0.0-2013.06.24* requires jQuery v1.5 or later* Copyright (c) 2013* note: 1、此方法能赋值一般所有表单,但考虑到checkbox的赋值难度,以及表单中很少用ch…