oracle

中自连接和

case when,decode

的应用

有表如下:

* from test026;

ID NAME                 SUBJECT                   SCORE

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

1 jim

语文

88

1 jim

数学

84

1 jim

英语

90

2 kate

语文

86

2 kate

数学

76

2 kate

英语

96

想得到如下效果:

学生编号

学生姓名

语文

数学

英语

方法:

1.

自连接:

(

这是自连接很典型的用处

应当熟练掌握

)

select a.id,a.name,a.score as "

语文

",b.score as "

数学

",c.score as "

英语

"

2   from test026 a,test026 b,test026 c

3   where a.id=b.id and a.subject='

语文

' and b.subject='

数学

'

4   and a.id=c.id and c.subject='

英语

';

ID NAME

语文

数学

英语

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

1 jim                            88         84         90

2 kate                         86         76         96

2

使用

case when

(数值)

Select id,name,

2 sum(case when subject='

语文

' then score end) as "

语文

",

3 sum(case when subject='

数学

' then score end) as "

数学

",

4 sum(case when subject='

英语

' then score end) as "

英语

"

5 from test026

6 group by id,name

7 /

oracle竖行的两列变成横行_SQL竖列变横列相关推荐

  1. MySQL中的竖列变横列

    工作中经常会用到竖列变横列的情况,下面通过一个实例来说一下实现竖列变横列的几种方式: 创建数据库表: CREATE TABLE `student_score` ( `id` int(11) unsig ...

  2. 【Mysql如何纵列变横列】

    Mysql如何纵列变横列 写数据库遇到的一个问题 现在有供应商表supplier和供应商联系人表supplier_person,他们之间是一对多的关系 联系人表:中有两种类型"IN" ...

  3. Excel中的竖列数据怎么变横列?转换竟然如此简单!

    怎么把Excel中的竖列数据变成横列?在统计数据的时候一般习惯用竖列的形式展现出来,但是有些数据不适合用横列的形式来展示该怎么办?最简单的就是直接将数列数据转为横列的,这样既省时又省事哦,下面就来为大 ...

  4. Mysql查询 竖列变横列

    编号 季度 施肥次数 施肥量 a1 1 1 50 a1 1 2 30 a2 2 1 20 转换成这样 编号 第一季度第一次施肥量 第一季度第二次施肥量 第二季度第一次施肥量 a1 50 30 a2 2 ...

  5. 用html将竖的图片打横,【收藏】让竖版图片变横版不变形的两种方法

    朋友们大家好,我在学员群里常常会讲到两个字:大忌. 每当说到这两个字的时候,所指的情况大多是某个朋友做的PPT里的某张图片,因为被强行拉伸而导致变形. 确实,在ppt或其他的什么设计图中,图片变形乃是 ...

  6. mysql纵列变横列_(转载)SQL语句,纵列转横列

    SQL语句,纵列转横列 Feed: 大富翁笔记 Title: SQL语句,纵列转横列 Author: wzmbox Comments sTable.db 库位 货物编号 库存数 1 0101 50 1 ...

  7. oracle竖行的两列变成横行_oracle数据竖列转横向显示问题!

    @m869485074: select SERTIAL, case when count(case when PROCESS_SERTIAL = 1 and PLANSTATUS = 2  then ...

  8. win10分屏设置一边竖屏_win10两个显示器横屏和竖屏拓展

    在电脑上连接两个显示器是一件非常酷的事情,不过如果我们在连接成功后没有设置对的话,也体验不到双显示器的便捷之处,这该怎么办呢?这里,系统城小编就来为大家介绍windows10系统电脑连接两个显示器的设 ...

  9. word如何弄成两竖列_word分栏后成了竖行

    word文档里怎样把横行变成竖行 第一步,先打开Word2013写好文字,选中文字,点击鼠标右键,弹出窗口,找到文字方向按钮. 第二步,在窗口中选择"文字方向-主文档",选择&qu ...

最新文章

  1. Spring 报It is indirectly referenced。。
  2. 全国计算机一级可以在手机上报名吗,全国计算机一级过的话能多次报名?
  3. springboot(2.2.4)的默认日志框架logback换成log4j2
  4. WebSocket的简单实现
  5. 使用委托(事件)或中介设计模式实现多个Windows窗体文本框的同步
  6. 继C / C ++之后,微软如何全面采用 Rust 的?
  7. matlab2c使用c++实现matlab函数系列教程-normpdf函数
  8. python解压.tar.gz
  9. 用EasyPoi导入Excel
  10. 计算机常用文献管理工具,工具丨5款常用的文献管理软件
  11. 调用QQ/TIM算法实现获取当前登陆账号和ClientKey
  12. Unity通过压缩字体减小包体大小
  13. 华为的PBC个人绩效评价模板
  14. 项目评价指标 误差回归_了解回归误差指标
  15. 用amCharts插件实现树状图
  16. Android 接入穿山甲SDK之插屏广告
  17. OPPOR9Plus系列通刷刷机包精简包_OPPOR9Plus线刷包救砖包_OPPOR9Plus纯净刷机包_OPPOR9Plus刷机教程下载
  18. 自动投注c语言,yy七周年自动挂机
  19. java基础语法if语句、循环
  20. Android工具修复属性,Android 热修复介绍之代码修复

热门文章

  1. <傲视天地>核心系统拆解图示
  2. mysql inserted表_数据库触发器inserted和deleted详解
  3. springboot 纯洁的微笑
  4. Ubuntu18.04下QT开发Android无法连接设备问题解决
  5. 创业公司公关和危机管理必读
  6. JS刷新页面的几种方法
  7. linux ip转发如何设置,如何在Linux上启用IP转发
  8. flack框架..学习中
  9. 100Audio和Asset Store游戏音乐素材对比
  10. c# sigmoid_[源码和文档分享]基于C#实现的支持AI人机博弈的国际象棋游戏程序