1.sql笔试题 表名a_mianshi
张三 语文 40
张三 数学 80
张三 物理 90
李四 语文 59
李四 数学 60
李四 物理 78
将上面表数据变成
李四 59 60 78
张三 40 80 90
以下是sql实现
select c.name,sum(语文),sum(数学),sum(物理) from (
select
(case when a.subject = '语文' then max(a.fen) else 0 end) 语文,
(case when a.subject = '数学' then max(a.fen) else 0 end) 数学,
(case when a.subject = '物理' then max(a.fen) else 0 end) 物理,
name from a_mianshi a group by name,subject) c
group by name