MYSQL行列转换详解
如下图:
(1)首先可以想到根据姓名来进行分组
select 姓名 from scores group by 姓名
(2)接着使用case when方法 显示我们的 ‘'课程" 字段
select 姓名,
sum(case 课程 when '语文' then 分数 else 0 end)as 语文
from scores group by 姓名;
(3) 最后一步显示我们的‘“分数”字段就完成了
select 姓名,
sum(case 课程 when '语文' then 分数 else 0 end)as 语文,
sum(case 课程 when '数学' then 分数 else 0 end)as 数学,
sum(case 课程 when '物理' then 分数 else 0 end)as 物理
from scores group by 姓名