У меня есть некоторые сомнения относительно суммы строк.У меня есть следующий набор данных в Teradata SQL Assistant:
id period avg_amt flag
111 1 123.5 1
211 1 143.1 1
311 2 122.1 1
411 3 214.5 1
511 3 124.6 0
611 3 153.2 1
Я хочу суммировать флаги на основе периода.Я попытался использовать функцию суммы за период двумя разными способами:
select
id, period, avg_amt, flag, sum(flag) over (partition by id order by period)
from dataset
и
select
id, period, avg_amt, flag, sum(flag)
group by id, period, avg_amt, flag
from dataset
Выходные данные не возвращают то, что я должен ожидать, т.е. для периода 1сумма = 3, период 2 сумма 1, период 3 сумма 2.
Не могли бы вы сказать мне, что не так?Спасибо