У меня есть сценарий, в котором мне нужно получить столбец суммы с помощью функции sql SUM. У меня есть пример данных, как это:
sampleTable:
dateCol, myCol
('12:00:01',3),
('12:00:01',4),
('12:00:01',5),
('12:00:01',NULL),
('12:00:01',NULL),
('12:00:01',3)
Я использую очередь ниже, чтобы получить сумму по столбцу myCol
select dateCol, myCol,
sum(case when dateCol is not null then 1 end) over (order by dateCol) as sumCol
from sampleTable;
Я получаю следующий результат:
dateCol myCol sumCol
1 12:00:01 3 4
2 12:00:01 4 4
3 12:00:01 5 4
4 12:00:01 NULL 4
5 12:00:01 NULL 4
6 12:00:01 3 4
но я ожидаю результат как:
dateCol myCol sumCol
1 12:00:01 3 1
2 12:00:01 4 2
3 12:00:01 5 3
4 12:00:01 NULL 3
5 12:00:01 NULL 3
6 12:00:01 3 4
Как мне изменить запрос, чтобы получить ожидаемый результат?