konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

Witam,

muszę policzyć sumę cyklicznie w okresach rocznych dla zadanego okresu czasu.
na przykład data początkowa 2013-04-02 algorytm powinien policzyć 365 dni wstecz i dla tego przedziału policzyć sumę zdarzeń i następnie dla kolejnych 365 i kolejnych

ktoś ma pomysł?

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

dateadd
dodaj określoną ilośś dni do daty i zrób between

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

Przemku to nie takie proste, bo liczyć trzeba dla kilku okresów.

Data daty początkowej 2009-10-15 i od tego muszę policzyć kolejne okresy np dla 10 lat wprzód.
Dla tak zdefiniowanych okresów muszę policzyć sumaryczny czas trwania zdarzeń w poszczególnych okresach rocznych.

Jedna data to jeden rekord, ilość rekordów jest zmienna, daty początkowe dla każdego z rekordów mogą być różne.

Może jakaś pętla? można zrobić na sztywno słownik?

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

jak okresy są stałe to iloczyn kartezjański
robisz słownik, dołaczasz do kwerendy ale nie dajesz relacji
każdy wiersz danych zostanie powtórzony tyle razy ile masz w słowniku

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

mam dwie tabele jak poniżej i teraz muszę policzyć np dla nr 098 kolejne okresy 365dni i jaki w tych okresach byl sumaryczny czas

nr data
-----------------
098 2013-03-01
876 2012-02-11
345 2011-01-05

oraz

nr nr_zdarzenia data_zdarzenia czas_trwania
-----------------------------------------------------------
098 0987 2013-04-01 01:00:00
876 0876 2013-01-01 00:32:00
098 8756 2013-02-01 00:14:00

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

select 
a.nr, sum(b.[czas_trwania]) as [suma]
from tabela_1 as a
join [tabela_2] as b
on a.nr = b.nr
and b.data_zdarzenia between a.[data] and (a.[data] + 365)

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

Poprawiłem zapytanie ale to nadal nie to liczy tylko dla jednego okresu 365 a powinno dla wieluPaweł S. edytował(a) ten post dnia 21.04.13 o godzinie 21:22

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

Paweł S.:
Poprawiłem zapytanie ale to nadal nie to liczy tylko dla jednego okresu 365 a powinno dla wielu

select 
a.nr, sum(b.[czas_trwania]) as [suma]
from tabela_1 as a
join [tabela_2] as b
on a.nr = b.nr
and b.data_zdarzenia between a.[data] and (a.[data] + 365)
group by a.nr

konto usunięte

Temat: Liczenie sum cyklicznie dla zadanych okresów czasu

ostatecznie zrobilem 3 kwerendy posrednie ze sztywnymi zalozeniami i union

Następna dyskusja:

Obliczanie czasu na podstaw...




Wyślij zaproszenie do