Oracle分組後對分組內容重複 取第一個

Oracle分組後對分組內容重複 的以另一列排序後 取第一個

語句

select * from(

select a.grep, row_number() over (partition by a.grep order by a.create_time desc nulls last) row_num

from test a

) aa   where aa.row_num = 1 --獲取分組排序後的第一個

row_number() over(partition by A order by B )

     A爲分組字段

     B爲分組後排序的字段

如果不加分組條件即   row_number() over(order by B desc)  這樣 那麼將不分組直接排序

加的話則按分組排序。這個函數執行在where語句之後

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章