我是SQL的新手.我有一个包含不同考试数据的数据库,例如:
Student Test Grade
--------------------
St1 T1 A
St2 T1 B
St3 T1 B
St1 T2 B
St2 T2 B
St3 T2 A
St1 T3 A
St2 T3 C
St3 T3 B
Run Code Online (Sandbox Code Playgroud)
然后,我想使用测试(T1,T2和T3)作为列打印报告:
Student T1 T2 T3
----------------------
St1 A B A
St2 B B C
St3 B A B
Run Code Online (Sandbox Code Playgroud)
我尝试了不同的东西,但我不知道如何制作这样的打印输出.任何帮助表示赞赏!
OMG*_*ies 11
使用:
SELECT t.student,
MAX(CASE WHEN t.test = 'T1' THEN t.grade END) AS T1,
MAX(CASE WHEN t.test = 'T2' THEN t.grade END) AS T2,
MAX(CASE WHEN t.test = 'T3' THEN t.grade END) AS T3
FROM TABLE t
GROUP BY t.student
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3907 次 |
| 最近记录: |