linq to sql 行转列_SQL 难题:行转列
生活随笔
收集整理的這篇文章主要介紹了
linq to sql 行转列_SQL 难题:行转列
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
問題:有一張學(xué)生成績表sc(sid 學(xué)號,cid 課程,score 成績),請查詢出每個(gè)學(xué)生的英語、數(shù)學(xué)的成績(行轉(zhuǎn)列,一個(gè)學(xué)生只有一行記錄)。
建表語句:
create實(shí)現(xiàn)方式1——join
這種實(shí)現(xiàn)方式很不好,很明顯要花很大的功夫去查詢數(shù)據(jù),而且我寫的代碼也沒有徹底的實(shí)現(xiàn)需求。不過我很慶幸我能夠想到這種方式,所以記錄一下!select實(shí)現(xiàn)方式2——窗口函數(shù)
這種方式明顯要比第1種方法很多,但仍然是存在問題的,而且代碼也不好看!同樣的,我仍然很慶幸自己能想到這種方式,所以記錄一下select實(shí)現(xiàn)方式3——group 計(jì)算
這種方式安全、衛(wèi)生、起效快。遺憾的是這種方式并不是我想出來的,而是參考了 @逆流 的代碼,這種方式毫無疑問將會(huì)是我以后寫代碼的首選!select結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的linq to sql 行转列_SQL 难题:行转列的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: repo同步代码_工欲善其事,必先利其器
- 下一篇: python建立数据库和基本表_pyth