2016-11-04 3 views
3

У меня есть следующий запрос:Накопительное Итого граф -SQL

Select 
    DATEPART(m,CREDAT_0) as Month, 
    COUNT(CREDAT_0) as count, 
    SUM(COUNT(*)) OVER() as totalcount 
from 
    x3v6.CICPROD.ITMFACILIT 
group by 
    DATEPART(m,CREDAT_0) 
order by 
    Month asc 

который возвращает результирующий набор:

Month count totalcount 
    1 56 2713 
    2 12 2713 
    3 39 2713 
    4 36 2713 
    5 54 2713 
    6 32 2713 
    7 27 2713 
    8 12 2713 
    9 32 2713 
    10 20722713 
    11 187 2713 
    12 154 2713 

Но я хочу видеть совокупный объем продукции, созданной за месяц год. Столбец такой:

Month count totalcount cumtotal 
    1 56 2713   56 
    2 12 2713   68 
    3 39 2713   107 
    4 36 2713   etc.. 
    5 54 2713 
    6 32 2713 
    7 27 2713 
    8 12 2713 
    9 32 2713 
    10 20722713 
    11 187 2713 
    12 154 2713   2713 

Как бы это осуществить? (если существует способ). Я использую T-SQL в SQL Server 2012.

Спасибо

+0

Вы можете использовать функцию кадрирования , – Hogan

ответ

4

Для последнего столбца

... 
, COUNT(*) OVER (Order by CREDAT_0) as cumcount 
... 
+0

Спасибо, я пытался использовать PARTITION, но не понимал, что это не требуется. Спасибо за ответ. –

+0

@MikeMirabelli Только если вы хотите сбросить счет i, e, Year over Year –

0

вы можете написать запрос, как показано ниже:

sum([count]) over(order by CREDAT_0) as CumulativeCount 
Смежные вопросы