分科目统计每科前三名的学生
生活随笔
收集整理的這篇文章主要介紹了
分科目统计每科前三名的学生
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一張表Tb_Student
insert into [Tb_Student] values('001','姜子牙','語文',80); insert into [Tb_Student] values('001',姜子牙','數(shù)學(xué)',70); insert into [Tb_Student] values('001','姜子牙','英語',90);insert into [Tb_Student] values('002','娜吒','語文',88); insert into [Tb_Student] values('002','娜吒','數(shù)學(xué)',77); insert into [Tb_Student] values('002','娜吒','英語',85);insert into [Tb_Student] values('003','雷震子','語文',99); insert into [Tb_Student] values('003','雷震子','數(shù)學(xué)',67); insert into [Tb_Student] values('003','雷震子','英語',94);?生成結(jié)果
id sname Subject grade student_no row 5 旺旺 數(shù)學(xué) 90 002 1 2 章三 數(shù)學(xué) 80 001 2 11 娜吒 數(shù)學(xué) 67 004 3 6 旺旺 英語 100 002 1 15 雷震子 英語 97 005 2 3 章三 英語 90 001 3 13 雷震子 語文 89 005 1 4 旺旺 語文 80 002 2 10 娜吒 語文 78 004 3?
--sql server sql語句 WITH TableOrder AS( select t.*,row_number() over(partition by t.[Subject] order by t.grade desc) row from [Tb_Student] t) SELECT * FROM TableOrder where row<=3;--oracle sql select * from ( select t.*,row_number() over(partition by t.[Subject] order by t.grade desc) rownum from [Tb_Student] t) where rownum<=3;?
?
轉(zhuǎn)載于:https://www.cnblogs.com/Warmsunshine/p/3641895.html
總結(jié)
以上是生活随笔為你收集整理的分科目统计每科前三名的学生的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: entity.Database.SqlQ
- 下一篇: Android manifest属性总结