1、case…when…then的使用
create table score( name varchar(30) not null, subject varchar(30) not null, score tinyint unsigned not null )engine = myisam default charset=utf8; insert into score values ('张三','语文',90), ('张三','数学',90), ('张三','英语',90), ('李四','语文',80), ('李四','数学',80), ('李四','英语',80), ('王五','语文',70), ('王五','数学',70), ('王五','英语',70);
查询每位学员各科成绩多少分,以及总分
select name, sum(case subject when '语文' then score else 0 end) as '语文', sum(case subject when '数学' then score else 0 end) as '数学', sum(case subject when '英语' then score else 0 end) as '英语', sum(score) as '总分' from score group by name