1. 程式人生 > >oracle根據成績排名查詢某個名次段的人員

oracle根據成績排名查詢某個名次段的人員

desc 區別 成績 des 別名 表結構 rank over ora

先說一下表結構 名字name 分數fenshu 表名test1,以下查詢的是成績排名為第三名和第四名,這個模板讓你查隨意排名段的人

select name,fenshu,mc from (
select

name,

fenshu,
dense_rank() over (order by fenshu desc) mc
from test1 )

where mc<=4and mc>2

dense_rank()與rank()區別是連續排名,比如有兩個成績一樣dense為112排名rank則為113排名,可以把**rank() over 理解為根據後面內容排名的意思,比如上面的是成績倒序,那就理解為根據成績倒序進行排名,排出來的字段設為別名mc

oracle根據成績排名查詢某個名次段的人員