1. 首页
  2. SQL

SQL分组查询时,如何将某个列的数据,在分组后变为横向多个字段?

比如现有表 record ,字段内容如下:

字段含义
idID
card_number学号
type学科类型,A: 数学, B:英语
score学科分数

需要展示如下格式内容

学号,数学成绩,英语成绩

查询SQL如下:

SELECT 
card_number, 
SUM( CASE WHEN type = 'A' THEN score ELSE 0 END) AS math,
SUM( CASE WHEN type = 'B' THEN score ELSE 0 END) AS english
FROM record 
GROUP BY card_number



TOP