时间:2021-07-01 10:21:17 帮助过:81人阅读
mysql 行列转换 ,在项目中应用的极其频繁,尤其是一些金融项目里的报表。其中最为头痛的就是多行转多列,动态的列行转换。最近在研究这些行里转换,还是从最为简单的行列转换开始。
首先示例数据原表如下:
【多行变一列】(合并后的数据在同一列上):
select name ,group_concat(sore Separator ';') as score from stu group by name
【多行变多列】(合并后的数据在不同列上):
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
以上就是mysql多行变多列的详细内容,更多请关注Gxl网其它相关文章!