select name, sum(decode(km,'英语',cj,0)) cj1, sum(decode(km,'数学',cj,0)) cj2 from table_name group by name; ============== select name, sum(case km when '英语' then cj else 0 end)) cj1, sum(case km when '数学' then cj else 0 end)) cj2 from table_name group by name;
sum(decode(km,'英语',cj,0)) cj1,
sum(decode(km,'数学',cj,0)) cj2
from table_name
group by name;
==============
select name,
sum(case km when '英语' then cj else 0 end)) cj1,
sum(case km when '数学' then cj else 0 end)) cj2
from table_name
group by name;