博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle列变行的小例子
阅读量:6816 次
发布时间:2019-06-26

本文共 748 字,大约阅读时间需要 2 分钟。

  hot3.png

--创建并插入初始化数据

drop table test;

create table  test(

    id number,

    name varchar2(50),    --姓名

    subject varchar2(50), --科目

    score number          --成绩

);

insert into test values(1,'Amy','语文',99);

insert into test values(2,'Amy','数学',90);

insert into test values(3,'Brown','语文',80);

insert into test values(4,'Brown','数学',88);

--查看表中数据

select * from test;

结果:

  ID NAME     SUBJECT          SCORE

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

   1 Amy       语文                 99

   2 Amy       数学                 90

   3 Brown     语文                 80

   4 Brown     数学                 88

--显示每位考生的语文和数学成绩

select name 姓名,

       max(decode(subject, '语文', score, 0)) 语文,

       max(decode(subject, '数学', score, 0)) 数学

  from test

 group by name;

结果:

姓名          语文      数学

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

Amy            99         90

Brown         80         88

之前写列变行一直写不好,应该是函数和group by子句使用不够娴熟。先写个简单的例子总结一下。

转载于:https://my.oschina.net/MiniBu/blog/278702

你可能感兴趣的文章
MySQL 是如何解决幻读的
查看>>
Some methods of deep learning and dimensionality reduction
查看>>
天马行空脚踏实地,阿里巴巴有群百里挑一的天才应届生 ...
查看>>
「镁客早报」高通称若没有苹果订单无需每年升级芯片;小米进行第二次回购 ...
查看>>
生产实践Kafka与ELK
查看>>
Eclipse的PropertiesEditor切换大小写
查看>>
Android多线程源码详解一:handler、looper、message、messageQueue
查看>>
SaaS加速器II 能力中心:互利互补 共享商业红利
查看>>
病毒木马防御与分析实战
查看>>
分布式工作流任务调度系统Easy Scheduler正式开源
查看>>
Flutter实战(一)写一个天气查询的APP
查看>>
Golang 入门系列(十) mysql数据库的使用
查看>>
Python零基础学习笔记(十二)—— 字符串及其常用方法
查看>>
数据脱敏平台-大数据时代的隐私保护利器
查看>>
区块链教程Fabric1.0源代码分析ledgerID数据库-兄弟连区块链教程
查看>>
轻松上云系列之二:其他云数据迁移至阿里云
查看>>
sql server 高可用性技术总结
查看>>
Robot Framework之分层测试流程
查看>>
学习ASP.NET Core Razor 编程系列七——修改列表页面
查看>>
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 23 章 本地化_23.3. 字符集支持
查看>>