Oracle給查詢結果增加序列號


在oracle中,需要加一個序列號,首先想到是用rownum這個關鍵字,比如sql如下

select rownum,t.* from table t

以上sql如果不增加排序,這個數據沒有問題,一旦增加排序,序列號就錯亂了

select rownum,t.* from table t order by t.stamp

解決方法如下:
第一種解決辦法:

select  rownum,a.*  from (select t.* from table t order by t.stamp)  a

第二種解決辦法:

select row_number() over (order by t.stamp) rn,t.*  from table t

個人更傾向於第二種


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM