●sql-行列转换

Posted 幻影K

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了●sql-行列转换相关的知识,希望对你有一定的参考价值。

 

-----------原表-------------------
student    classes    score
张三    语文    74
张三    数学    83
张三    物理    93
李四    语文    74
李四    数学    84
李四    物理    94
----------------------------------
--1、pivot
SELECT tt.student 姓名,tt.语文,tt.数学,tt.物理
FROM sco AS tt1
PIVOT (SUM(score) FOR classes IN (语文,数学,物理)) AS tt;

--2、
SELECT student 姓名,
MAX(CASE WHEN classes = 语文 THEN score ELSE 0 END) 语文,
MAX(CASE WHEN classes = 数学 THEN score ELSE 0 END) 数学,
MAX(CASE WHEN classes = 物理 THEN score ELSE 0 END) 物理
FROM sco
GROUP BY student

--执行结果
------------------------------
姓名    语文    数学    物理
张三    74    83    93
张三    74    83    93

-------------------------------

 

以上是关于●sql-行列转换的主要内容,如果未能解决你的问题,请参考以下文章

sql动态实现行列转换

sql行列转换和累加问题~~~

[高分悬赏] sql 行列转换 请高人指点

sql server行列转换问题

SQL行列转换

写sql,怎么将查询结果的行列转换呀?