交叉报表

交叉报表

1.表:
id   name   kechen   fengshu
1    张三     数学          56
2    张三     语文          67
3    张三     化学          87
4    李四     语文          24
5    王五     化学          54
通过select 语句得到 下面的结果
name  数学  语文  化学
张三    56      67      87
李四    null   24     null
王五    null   null    54

2.答案如下:
select name,sum(yuwen) yuwen,sum(shuxue)  shuxue,sum(huaxue)  huaxue
from(
    select name,
       case kechen when '语文' then fengshu end yuwen,
    case kechen when '数学' then fengshu end shuxue,
    case kechen when '化学' then fengshu end huaxue
    from table
 )as t1
group by name

你可能感兴趣的:(交叉报表)