當(dāng)有多個(gè)數(shù)據(jù)具有相同的值時(shí),Oracle的rank()函數(shù)會(huì)為它們分配相同的排名,然后跳過下一個(gè)排名。例如,如果有3個(gè)數(shù)據(jù)具有相同的值,它們將會(huì)獲得相同的排名,然后下一個(gè)數(shù)據(jù)將會(huì)獲得比它們的排名更高的值。
例如,如果有以下數(shù)據(jù):
姓名 | 分?jǐn)?shù) |
---|---|
A | 90 |
B | 85 |
C | 80 |
D | 75 |
E | 75 |
使用rank()函數(shù)時(shí),排名會(huì)按照分?jǐn)?shù)的高低進(jìn)行排名。在這個(gè)例子中,D和E兩個(gè)數(shù)據(jù)具有相同的分?jǐn)?shù)(75),它們將會(huì)獲得相同的排名(4),然后下一個(gè)數(shù)據(jù)將會(huì)獲得排名5。
因此,最終的排名結(jié)果如下:
姓名 | 分?jǐn)?shù) | 排名 |
---|---|---|
A | 90 | 1 |
B | 85 | 2 |
C | 80 | 3 |
D | 75 | 4 |
E | 75 | 4 |