sql sum(case when else end) 。。。group by。。。实现行转列
SELECT
学生姓名,
学生学科,
成绩
FROM tb_StuScore10
--在学生成绩信息表中tb_StuScore10实现行转列
SELECT
学生姓名,
SUM(CASE 学生学科
WHEN '语文' THEN 成绩 ELSE NULL
END) AS 语文,
SUM(CASE 学生学科
WHEN '外语' THEN 成绩 ELSE NULL
END) AS 英语,
SUM(CASE 学生学科
WHEN '数学' THEN 成绩 ELSE NULL
END) AS 数学
FROM tb_StuScore10
GROUP BY 学生姓名
GO
注意:Group By 有减少行的作用,sum作为一个自增列,多几个sum,就多几个列