Sumowanie warunkowe SQL

0

Cześć,

Mam tabelę z trzema kolumnami dzień, godzina i kwota.
Potrzebuję do tego zapytanie, które w NOWEJ_KOLUMNIE będzie sumować kwoty ze wszystkich godzin <= dana godzina i tylko dla tej samej daty czyli np. dla dnia 02/01 godz 11 powinno zsumować w nowej kolumnie kwoty 424,76 + 1504,93 + 2538,33, dla godziny 12 kwoty 424,76 + 1504,93 + 2538,33 + 2937,76, itd. Przy starcie nowego dnia sumowanie zaczyna się od początku tylko dla kwot z tego samego dnia.

DZIEŃ        GODZINA    KWOTA       NOWA_KOLUMNA
02-01-2018      9       424,76      424,76
02-01-2018      10      1504,93     1929,69
02-01-2018      11      2538,33     4468,02
02-01-2018      12      2937,76     7405,78
02-01-2018      13      2995        10400,78
02-01-2018      14      2722,84     13123,62
02-01-2018      15      1899,24     15022,86
02-01-2018      16      2223,13     17245,99
02-01-2018      17      1930,53     19176,52
02-01-2018      18      2456,05     21632,57
02-01-2018      19      1526,88     23159,45
02-01-2018      20      492,14      23651,59
02-01-2018      21      48,04       23699,63
03-01-2018      9       691,03      691,03
03-01-2018      10      867,05      1558,08
03-01-2018      11      2156,2      3714,28
03-01-2018      12      2002,09     5716,37
03-01-2018      13      1838,28     7554,65
03-01-2018      14      854,31      8408,96
03-01-2018      15      2340,34     10749,3
0
SELECT SUM (KWOTA) FROM tabela WHERE dzien = value, godzina = value

??

2

Hej,
Zagadnienie do wyszukania na przyszłość > running sum:

select [DZIEŃ],[GODZINA],[KWOTA],
sum(KWOTA) over (partition by [DZIEŃ] order by [GODZINA]) as NOWA_KOLUMNA
from TwojaTabela;

0

Działa :)
Dzięki za szybką odpowiedź :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0