Oracle 列转行
来源:互联网 发布:网络教育选什么专业 编辑:程序博客网 时间:2024/06/06 23:39
1.新建一个名为TEST表
2.向TEST表中添加数据
INSERT INTO TEST(STUDENT,COURSE,SCORE)
select '张三','语文',78 from dual union
select '张三','数学',87 from dual union
select '张三','英语',82 from dual union
select '张三','物理',90 from dual union
select '李四','语文',65 from dual union
select '李四','数学',77 from dual union
select '李四','英语',65 from dual union
select '李四','物理',85 from dual
表数据如下:
3.列转行
方法··1:
select
Student,
sum(decode(Course, '数学', Score)) 数学,
sum(decode(Course, '物理', Score)) 物理,
sum(decode(Course, '英语', Score)) 英语,
sum(decode(Course, '语文', Score)) 语文
from
TEST
group by Student
方法··2:
select
Student,
sum(case Course when '数学' then Score else null end) 数学,
sum(case Course when '物理' then Score else null end) 物理,
sum(case Course when '英语' then Score else null end) 英语,
sum(case Course when '语文' then Score else null end) 语文
from
TEST
group by Student
效果如下:
注:sum是求和的意思;比如说里面记录里面有两条张三,列转行显示的结果就会是两个张三的结果之和。
- ORACLE 列转行
- 行转列.列转行 oracle
- Oracle列转行
- oracle 行转列,列转行
- 【ORACLE】行转列,列转行
- oracle 列转行
- oracle 行转列 列转行
- oracle 行转列,列转行
- ORACLE sql 列转行
- oracle列转行
- oracle 行转列 列转行
- oracle 列转行
- oracle 列转行
- oracle行转列、列转行
- oracle 列转行
- oracle 行转列 列转行
- oracle 行转列 列转行
- oracle 列转行
- sphinx搭建亿级搜索
- 项目经验分享--今天数据库的一张表挂了is marked as crashed and last (automatic?) repair failed
- 织梦把普通地图改为xml
- Mybatis association
- Windows平台下GCC编程之输出1000年(包括1000年)到1999年之间的所有闰年,要求每三个一行,分行输出
- Oracle 列转行
- 轻松搞定面试中的二叉树题目
- 转载:那些著名或者非著名的面试题(上)
- Artisan框架使用帮助
- Android读取相册时报错:Attempted to access a cursor after it has been closed.
- cocos2d-x自制工具07:打印cocos2d-x的节点树
- Retrofit 2.0:有史以来最大的改进
- IE9下面图片黑框问题
- IOS懒加载