Marcinie, naczytałeś się porad, to czas na wyzwanie.
Wyzwanie jest oczywiście dla wszystkich, pomysły, propozycje
proszę w komentarzach.
Opis danych źródłowych. Posiadamy tabelę:
ROZLICZENIA_DO_OVER_PLUS. Tabela składa się z czterech pól:
• data_stanu: trzy wartości
przyjmuje to pole, trzy daty wskazujące na określony koniec roku,
• kontrakt: czteroznakowy kod
kontraktu,
• saldo: wartość liczbowa, ile
z danego kontraktu na dany koniec roku, na daną datę stanu jeszcze otrzymamy pieniędzy,
• typ_towaru: dwie wartości
pole przyjmuje to jest: noteboki lub akcesoria, wskazuje a rodzaj towaru
zakupiony przez kontrahenta.
Zadanie wykonania: napisać kwerendę, w wyniku
której otrzymamy tabelę, a jakżeż by inaczej, zawierającej następujące pola i
wartości w nich.
• datę stanu tj. wartość z pola
data_stanu,
• typ towaru tj. wartość z pola
typ_towaru (noteboki lub akcesoria),
• łączne saldo w danej dacie,
ile po prostu pieniędzy się spodziewamy łącznie w danej kwocie, łącznie, jedna
wartość podkreślam,
• saldo w danej dacie i na dany
rodzaj typu towaru,
• relację w procentach salda w
danej dacie przypadającego na daty towar do łącznego
salda w danej dacie np. saldo wynikające ze sprzedaży akcesoriów na dzień
20101231 wynosi 0,31 * 100 = 31%,
• liczbę kontraktów aktywnych
łącznie w dacie,
• liczbę kontraktów w dacie
przypadającą na noteboki lub akcesoria,
• relację w procentach liczby
kontraktów dotyczących danego typu towaru do łącznej liczby aktywnych
kontraktów w danej dacie, np. relacja liczby kontraktów aktywnych związanych ze
sprzedażą akcesoriów do łącznej liczby aktywnych kontraktów na dzień 20101231
wynosi 0,43*100 = 43%.
Wyraźnie zadanie wskazuje liczbę kolumn.
Liczba kolumn w wyniku musi być: 8 (osiem).
Dane oraz zadanie w arkuszu excel są dostępne
tutaj i na obrazku. W arkuszu excel są dane źródłowe oraz rozwiązanie w tym
narzędziu, są formuły po prostu.
Linki:
Czy Marcinie podejmiesz się wyzwania?
Podpowiadam, iż będę chciał w ten sposób pokazać
wykorzystanie dwóch typów grupowania, że tak powiem typowego GROUP BY oraz
rzadziej stosowanego OVER (PARTITION BY).
WITH w tytule posta też nie jest przypadkowe…
Wyzwanie jest oczywiście dla wszystkich, pomysły, propozycje
proszę w komentarzach.
W.
Brak komentarzy:
Prześlij komentarz