本帖最後由 macrowho 於 2014-6-24 14:56 編輯 T表數據如下: ID NAME DV 1 aaa 1 2 aaa 0 3 aaa 0 5 aaa 5 7 aaa 7 11 aaa 11 12 aaa 10 |
SELECT ID, NAME, DV, MAX(DV) OVER(PARTITION BY NAME ORDER BY ID RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) R_1, MAX(DV) OVER(PARTITION BY NAME ORDER BY ID) R, MAX(DV) OVER(PARTITION BY NAME ) R3 FROM T; |
有ORDER BY,不寫後面的開窗語句(rang/rows between ... and ...),默認爲分組中的第一行到當前行。
沒有ORDER BY,不寫後面的開窗語句(rang/rows between ... and ...),默認爲分組中的所有行。
原帖:http://www.itpub.net/thread-1873977-1-1.html