找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 mysql教程 查看内容

mysql多行变多列

作者:模板之家 2019-5-25 09:51 5096人关注

MySQL中行列的转换在一般的报表中很常见,一般的操作都是通过在原表中查询到数据后分别在不同的列中进行不同的展示。

MySQL中的行列变换

mysql 行列转换 ,在项目中应用的极其频繁,尤其是一些金融项目里的报表。其中最为头痛的就是多行转多列,动态的列行转换。最近在研究这些行里转换,还是从最为简单的行列转换开始。

首先示例数据原表如下:

20151209073425002d.jpg

【多行变一列】(合并后的数据在同一列上):

select name ,group_concat(sore Separator ';') as score from stu group by name

20151209072453455.jpg

【多行变多列】(合并后的数据在不同列上):

SELECT name ,
MAX(CASE type WHEN '数学' THEN score ELSE 0 END ) math,
MAX(CASE type WHEN '英语' THEN score ELSE 0 END ) English ,
MAX(CASE type WHEN '语文' THEN score ELSE 0 END ) Chinese 
FROM stu  
GROUP BY name

20151209073719916.jpg

以上就是mysql多行变多列的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章!


路过

雷人

握手

鲜花

鸡蛋
来自: [db:来源]

全部回复(0)

发表评论