sql over的作用及用法

2021-05-22 21:43:37 字數 1103 閱讀 6977

rank ( ) over ( [query_partition_clause] order_by_clause )

dense_rank ( ) over ( [query_partition_clause] order_by_clause )

可實現按指定的字段分組排序,對於相同分組欄位的結果集進行排序,其中

partition by

為分組字段,

order by

指定排序字段

1.over

不能單獨使用,要和分析函式:

rank(),dense_rank(),row_number()

等一起使用。其引數:

over

(partition by columnname1 order by columnname2

)含義:按

columname1

指定的字段進行分組排序,或者說按欄位

columnname1

的值進行分組排序。例如:

employees

表中,有兩個部門的記錄:

department_id =10

和20 select department_id

,rank

()over

(partition by department_id order by salary) from employees

就是指在部門

10中進行薪水的排名,在部門

20中進行薪水排名。如果是

partition by org_id

,則是在整個公司內進行排名

2.不是

over,

是rank() over

,具體語法形如:

rank ( ) over ( [query_partition_clause] order_by_clause ) dense_rank ( ) over ( [query_partition_clause] order_by_clause )

可實現按指定的字段分組排序,對於相同分組欄位的結果集進行排序

, 其中

partition by

為分組字段,

order by

指定排序字段

sql over的作用及用法

rank over query partition clause order by clause dense rank over query partition clause order by clause 可實現按指定的字段分組排序,對於相同分組欄位的結果集進行排序,其中partition by ...

sql over的作用及用法

sql over的作用及用法 rank over query partition clause order by clause dense rank over query partition clause order by clause 可實現按指定的字段分組排序,對於相同分組欄位的結果集進行排序,...

sql over的作用及用法

rank over query partition clause order by clause dense rank over query partition clause order by clause 可實現按指定的字段分組排序,對於相同分組欄位的結果集進行排序,其中partition by ...