数据库实现列转行,如何做?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

数据库实现列转行,如何做?

2016-02-12 16:14:52 2206 1

19
如上图,不使用存储过程,通过sql如何将左边的数据整理成右边的样子?
上网找了好多例子,可大多都是固定列的,没找到像这样行列数量不确定的。
类似这样的需求应该挺常见的吧,我目前的办法是将数据取出来,然后在程序里面整理。
有简便一点的办法吗?

取消 提交回答
全部回答(1)
  • 落地花开啦
    2019-07-17 18:41:29

    给你个参考例子,你自己看看
    现在有一张score表,存储学生每门课的成绩,结构数据如下:
    idnamesubjectscore
    1张三 语文90
    2张三 数学88
    3张三 外语75
    4李四 语文99
    5李四 数学70
    6李四 外语95
    7李五 语文88
    8李五 数学85
    9李五 外语90
    现在要求列出每个学生所有课程的成绩.这就是一个典型的行转列的应用
    sql 语句如下:
    `SELECT name,max(case subject when '语文' then score else 0 end) as '语文',
    max(case subject when '数学' then score else 0 end) as '数学',
    max(case subject when '外语' then score else 0 end) as '外语'
    FROM score group by name`

    0 0
相关问答

1

回答

如何新增多个数据库

2018-11-22 15:51:11 236浏览量 回答数 1

1

回答

如何实现实施备份数据

2018-04-16 21:15:37 414浏览量 回答数 1

2

回答

数据库

2018-03-02 14:19:24 2021浏览量 回答数 2

2

回答

数据库

2017-10-30 09:31:34 2112浏览量 回答数 2

2

回答

数据库

2017-01-06 22:10:22 1674浏览量 回答数 2

5

回答

数据库

2016-03-17 14:51:50 5654浏览量 回答数 5

0

回答

数据库

2015-12-31 13:36:23 2425浏览量 回答数 0

4

回答

数据库

2015-12-15 11:52:44 5081浏览量 回答数 4

3

回答

数据库

2015-09-04 18:49:58 3776浏览量 回答数 3

3

回答

数据库

2015-07-27 09:51:13 3117浏览量 回答数 3
+关注
落地花开啦
喜欢技术,喜欢努力的人
文章
问答
问答排行榜
最热
最新
相关电子书
更多
MySQL表和索引优化实战
立即下载
RowKey与索引设计:技巧与案例分析
立即下载
数据在PG中的升华
立即下载