مارا دنبال کنید : 

RANK

RANK

مطالب مرتبط

Roles

Roles

توضیحات
این تابع رنک مقدار در گروه خود را می‌دهد، این تابع بسیار شبیه به تابع DENSE_RANK است با این تفاوت که اگر سطرهای مشابه وجود داشته باشد این تابع به صورت مجزا به آن‌ها نگاه می‌کند.
دستور
تابع RANK به صورت زیر نوشته می‌شود‌:
1
RANK( expr1 [, expr2, ... expr_n ] ) WITHIN GROUP ( ORDER BY expr1 [, expr_2, ... expr_n ] )
.
مثال
مثالی از خروجی تابع RANK و DENSE_RANK را مشاهده می‌کنیم:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Select ROW_NUMBER() over (order by Salary) as RowNum, Salary,
RANK() over (order by Salary) as Rnk,
DENSE_RANK() over (order by Salary) as DenseRnk from (
Select 1000 as Salary union all
Select 1000 as Salary union all
Select 1000 as Salary union all
Select 2000 as Salary union all
Select 3000 as Salary union all
Select 3000 as Salary union all
Select 8000 as Salary union all
Select 9000 as Salary) A
----------------------------
RowNum  Salary  Rnk DenseRnk
----------------------------
1       1000    1   1
2       1000    1   1
3       1000    1   1
4       2000    4   2
5       3000    5   3
6       3000    5   3
7       8000    7   4
8       9000    8   5
0 0 رای ها
امتیازدهی به مقاله
اشتراک در
اطلاع از
guest
0 نظرات
تازه‌ترین
قدیمی‌ترین بیشترین رأی
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها