2013-10-19 108 views
0

我現在用的是ROW_NUMBER功能這樣列(PARTITION BY .... ORDER BY ...)

SELECT ROW_NUMBER() OVER (PARTITION BY TABLE1.COL1, TABLE2.COL1 ORDER BY TABLE1.COL4) as ROWNUM 
FROM TABLE1 
JOIN TABLE2 
ON ...... 

,我運行此查詢與返回數據只有一排,但ROWNUM是不是1,和我期望的那樣,有時是4,有時5

這是錯誤的使用的列從多發表在PARTITION BY... ORDER BY..

在此先感謝您的幫助

回答

1

partition by將重新啓動的行數在Table1.col1和Table2.col1每一個變化

好像你期待這將通過下面的變化來實現結果:

SELECT ROW_NUMBER() OVER (ORDER BY TABLE1.COL4) as ROWNUM 
FROM TABLE1 
JOIN TABLE2 
ON ......