sql 列转行_SQL面试题:如何行列互换?一个万能模板
生活随笔
收集整理的這篇文章主要介紹了
sql 列转行_SQL面试题:如何行列互换?一个万能模板
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
三個(gè)步驟:
1。輸出行列互換的結(jié)構(gòu)表
SELECT 學(xué)號(hào),'課程編號(hào)0001','課程編號(hào)0002','課程編號(hào)0003' from score;2。再用case...when...來輸出數(shù)據(jù)
SELECT 學(xué)號(hào), (case when 課程號(hào)='0001' then 成績 else 0 end) as '課程號(hào)0001', (case when 課程號(hào)='0002' then 成績 else 0 end) as '課程號(hào)0002', (case when 課程號(hào)='0003' then 成績 else 0 end) as '課程號(hào)0003' from score;3.用group by及max輸出最終結(jié)果
SELECT 學(xué)號(hào), max(case when 課程號(hào)='0001' then 成績 else 0 end) as '課程號(hào)0001', max(case when 課程號(hào)='0002' then 成績 else 0 end) as '課程號(hào)0002', max(case when 課程號(hào)='0003' then 成績 else 0 end) as '課程號(hào)0003' from score group by 學(xué)號(hào);拓展,列轉(zhuǎn)行
SELECT name,'english' as subject, english as score from a1 UNION ALL SELECT name,'maths' as subject,maths as score from a1 UNION ALL SELECT name,'music' as subject,music as score from a1;參考:
行列互換問題,怎么辦?送你一個(gè)萬能模版
sql面試題:行列如何互換?
。
總結(jié)
以上是生活随笔為你收集整理的sql 列转行_SQL面试题:如何行列互换?一个万能模板的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 六级范文背诵50篇_清华附小校长:小学生
- 下一篇: pymysql语法_pymysql的用法