2014年12月2日 星期二

[SQL]increment rownum by value




參考:http://stackoverflow.com/questions/10477085/oracle-partition-by-and-row-number-keyword
http://www.techhoney.com/oracle/clause/row_number-clause-in-oracle-sql-plsql/

SELECT  LINE_ATTRIBUTE3,   ROW_NUMBER () over (partition by LINE_ATTRIBUTE3 order by LINE_ATTRIBUTE3)  FROM t_cht_si_ap_ebs_out ;


output
0214V00000009 3
0214V00000010 1
0214V00000011 1
0214V00000012 1
0214V00000012 2
0214V00000013 1
0214V00000014 1
0214V00000014 2
0214V00000014 3
0214V00000015 1
0214V00000015 2
0214V00000015 3


另外還有其他排序方式
參考:
ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN DESC)  
RANK()       OVER(PARTITION BY COLUMN ORDER BY COLUMN DESC) 
DENSE_RANK() OVER(PARTITION BY COLUMN ORDER BY COLUMN DESC) 

https://tw.news.yahoo.com/%E9%98%B2%E8%83%83%E9%A3%9F%E9%81%93%E9%80%86%E6%B5%81-%E5%B0%91%E5%96%9D%E5%92%96%E5%95%A15%E6%8B%9B%E6%90%9E%E5%AE%9A-040404333.html

沒有留言:

張貼留言