СУММА (y) ОБЩАЯ (ПОРЯДОК ПО x) SQL Server 2008 R2 - PullRequest
0 голосов
/ 30 октября 2018

Я выполняю следующий запрос;

CREATE TABLE #temp_c 
(
     row_id NUMERIC(18) IDENTITY (1,1), 
     value NUMERIC(18)
)

INSERT #temp_c (value)
VALUES (1), (7), (10), (1), (12), (8), (6), (3)

SELECT 
    row_id,
    value,
    SUM(value) OVER (ORDER BY row_id) total 
FROM 
    #temp_c

DROP TABLE #temp_c

И ожидайте следующих результатов

row_id                                  value                                   total
--------------------------------------- --------------------------------------- ---------------------------------------
1                                       1                                       1
2                                       7                                       8
3                                       10                                      18
4                                       1                                       19
5                                       12                                      31
6                                       8                                       39
7                                       6                                       45
8                                       3                                       48

При выполнении этого кода в SQL Server 2012 вышеуказанный запрос работает как ожидалось.

При выполнении этого кода в SQL Server 2008 R2 запрос возвращает следующую ошибку

Msg 102, Level 15, State 1, Line 17
Incorrect syntax near 'order'.

Согласно этой документации Я смогу начать использовать этот запрос в 2008 году.

Обратите внимание, что синтаксис PARTITION BY работает в обеих версиях. Была ли логика ORDER BY реализована позднее?

...