【SQL 学习】行列转换

简介:

SQL> conn system/yang as sysdba
已连接。
SQL> conn yang/yang
已连接。
SQL> create table change (name varchar(10),subject varchar2(20),grade int);
表已创建。
SQL> set timing on
SQL> insert into change values ('Jim','语文',100);
已创建 1 行。
已用时间:  00: 00: 00.00
SQL> insert into change values ('Jim','数学',90);
已创建 1 行。
已用时间:  00: 00: 00.03
SQL> insert into change values ('Jim','英语',99);
已创建 1 行。
已用时间:  00: 00: 00.00
SQL> insert into change values ('Lily','语文',80);
已创建 1 行。
已用时间:  00: 00: 00.01
SQL> insert into change values ('Lily','数学',90);
已创建 1 行。
已用时间:  00: 00: 00.00
SQL> insert into change values ('Lily','英语',94);
已创建 1 行。
已用时间:  00: 00: 00.01
SQL> commit;
提交完成。
已用时间:  00: 00: 00.03
SQL> select * from change;

NAME       SUBJECT                   GRADE                                     
---------- -------------------- ----------                                     
Jim        语文                        100                                     
Jim        数学                         90                                     
Jim        英语                         99                                     
Lily         语文                         80                                     
Lily         数学                         90                                     
Lily         英语                         94                                     
已选择6行。

SQL> select name as "姓名" ,
  2  sum(decode(subject,'语文',grade,NULL)) "语文",
  3  sum(decode(subject,'数学',grade,NULL)) "数学",
  4  sum(decode(subject,'英语',grade,NULL)) "英语"
  5  from change
  6  group by name;

姓名             语文       数学       英语                                    
---------- ---------- ---------- ----------                                    
Lily               80         90         94                                    
Jim            100         90         99                                    
已用时间:  00: 00: 00.01

相关文章
|
2天前
|
SQL 缓存 关系型数据库
MySQL技能完整学习列表6、查询优化——3、查询缓存——4、SQL优化技巧
MySQL技能完整学习列表6、查询优化——3、查询缓存——4、SQL优化技巧
65 0
|
2天前
|
SQL 测试技术 项目管理
轻松学习SQL外键约束的核心原理和实用技巧
轻松学习SQL外键约束的核心原理和实用技巧
49 0
|
2天前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
56 0
|
2天前
|
SQL 关系型数据库 MySQL
0基础学习SQL注入之万能账号密码(BUUctf例题-[极客大挑战 2019]EasySQL1)
0基础学习SQL注入之万能账号密码(BUUctf例题-[极客大挑战 2019]EasySQL1)
|
2天前
|
SQL 关系型数据库 MySQL
快速学习MySQL SQL语句
快速学习MySQL SQL语句
|
2天前
|
SQL 数据库 内存技术
学习数据库要掌握的54条SQL查询语句
学习数据库要掌握的54条SQL查询语句
17 0
|
2天前
|
SQL 安全 关系型数据库
MySQL技能完整学习列表3、SQL语言基础——3、SQL运算符和函数
MySQL技能完整学习列表3、SQL语言基础——3、SQL运算符和函数
38 0
|
2天前
|
SQL Java 关系型数据库
JDBC技术【SQL注入、JDBC批量添加数据、JDBC事务处理、其他查询方式】(三)-全面详解(学习总结---从入门到深化)
JDBC技术【SQL注入、JDBC批量添加数据、JDBC事务处理、其他查询方式】(三)-全面详解(学习总结---从入门到深化)
35 0
|
2天前
|
SQL
SQL高阶学习
SQL高阶学习
19 0
|
2天前
|
SQL 关系型数据库 MySQL
解密 sqli靶场第一关:一步一步学习 SQL 注入技术
解密 sqli靶场第一关:一步一步学习 SQL 注入技术
46 0
解密 sqli靶场第一关:一步一步学习 SQL 注入技术