ZNOWU LAG, nie mamy danych z dni wolnych w miesiącu, to jak
uzupełnić dane?
Lepiej późno niż wcale, powiedziała pewna pani, gdy na
pociąg się spóźniła… Pewną zagadkę swego czasu rozwiązywałem, rozwiązywałem, a
później temat stał się nieaktualny :-)
Opis sytuacji:
W dni robocze są ładowane dane do hurtowni. Po prostu dla
każdego dnia roboczego jest dostępna informacja o saldzie środków na koncie
danego Klienta.
Odsetki płacimy za każdy dzień trzymania środków u nas przez
Klienta, ale także za dni wolne.
Robimy plan kosztów na kolejny rok. Mamy dane z jednego stycznia 2012 roku.
No to cóż, trzeba policzyć średnie saldo w miesiącu środków,
to saldo pomnożyć przez stopę procentową, według której płacimy odsetki i już wiemy ile zapłacimy Klientowi.
No właśnie, ale jak ma się średnia obliczona na danych w
hurtowni z dni roboczych do średniej policzonej na wszystkich dniach w
miesiącu. Jak uzupełnić informację o salda z niezaładowanych dni?
Oto jest pytanie?
Prezentacja problemu, dane, kody i tak dalej. Wszystko w
lokalizacji poniżej. A rozwiązanie to połączenie wykorzystania COALESCE i LAG
(w przypadku Oracle to wykorzystać należy Marcinie NVL2 i LAG).
Brak komentarzy:
Prześlij komentarz