Temat: Dwa pola wartości kwerendzie krzyżowej ?
najprościej to rzeczywiście join dwóch kwerend krzyżowych, ale nic nie stoi na przeszkodzie, aby zrobić to bez pivota, niestety wymaga to znajomości wszystkich wartości dla których chcemy stworzyć kolumny
Załóżmy że mamy takie dane w tabeli "tab"
|produkt |miesiac |ilosc |wartosc
mleko 1 5 20
mleko 2 5 20
mleko 3 5 20
masło 1 5 20
masło 4 5 20
masło 5 5 20
I chcemy to obrócić po kolumnie miesiąc, więc wiemy że wartości w niej są od 1 do 5, więc obracamy:
SELECT
produkt
,sum(IIF(miesiac = 1,ilosc,0)) as [Styczeń (il)]
,sum(IIF(miesiac = 1,wartosc,0)) as [Styczeń (war)]
,sum(IIF(miesiac = 2,ilosc,0)) as [Luty (il)]
,sum(IIF(miesiac = 2,wartosc,0)) as [Luty (war)]
,sum(IIF(miesiac = 3,ilosc,0)) as [Marzec (il)]
,sum(IIF(miesiac = 3,wartosc,0)) as [Marzec (war)]
,sum(IIF(miesiac = 4,ilosc,0)) as [Kwiecien (il)]
,sum(IIF(miesiac = 4,wartosc,0)) as [Kwiecień (war)]
,sum(IIF(miesiac = 5,ilosc,0)) as [Maj (il)]
,sum(IIF(miesiac = 5,wartosc,0)) as [Maj (war)]
FROM
tab
GROUP BY
produkt