Group by 第二选择 OVER
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 指定排序字段
?
例子:
?
SELECT???? purchase_no,
?????????? purchase_detail_no,
?????????? accident_status_cd,
?????????? row_number() over (PARTITION BY purchase_no, purchase_detail_no order by purchase_detail_no)
FROM?? mtinq_acceidents
?
?
總結
以上是生活随笔為你收集整理的Group by 第二选择 OVER的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何让gridview中的checkbo
- 下一篇: Oracle执行外部文件: