nastepujacy problem
Mam tabele:
Kolumna1 | Kolumna2
-----------------------------
_Wartosc1| 0
_Wartosc1| 1
_Wartosc1| 2
_Wartosc1| 1
_Wartosc1| 1
_Wartosc2| 0
_Wartosc2| 1
_Wartosc3| 2
_Wartosc3| 1
_Wartosc3| 1
Czy jest możliwość aby bez zagnieżdżonych zapytań policzyc wszystkie 0
dla Wartosc1, 1 dla Wartosc1, 2 dla Wartosc1 itd. Czyli zagregować dla
konkrentych wartosci.
czyli na wyjsciu chcialbym otrzymac:
Kolumna1 | 0|1|2
-----------------------------
_Wartosc1| 1|3|1
_Wartosc2| 1|1|0
_Wartosc3| 0|2|1
Pozdrawiam
no jako pivot ale czy baza to obs�uguje? postgres nie
SELECT kolumna1, sum(case kolumna2 when 0 then 1 else 0 end) as "0"
,sum(case kolumna2 when 1 then 1 else 0 end) as "1"
sum(case kolumna2 when 2 then 1 else 0 end) as "0"
FROM TABELA
GROUP BY kolumna1;
P.S.
Pisz o jakďż˝ bazďż˝ chodzi.
--
S�awomir Szysz�o
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?group=pl.comp.bazy-danych
Dziekuje za pomoc.
Jednak Case jest w HQL.
Pozdrawiam.
> Witam,
>
> nastepujacy problem
>
> Mam tabele:
>
> Kolumna1 | Kolumna2
> -----------------------------
> _Wartosc1| 0
> _Wartosc1| 1
> _Wartosc1| 2
> _Wartosc1| 1
> _Wartosc1| 1
> _Wartosc2| 0
> _Wartosc2| 1
> _Wartosc3| 2
> _Wartosc3| 1
> _Wartosc3| 1
>
> Czy jest mo�liwo�� aby bez zagnie�d�onych zapyta� policzyc wszystkie 0
> dla Wartosc1, 1 dla Wartosc1, 2 dla Wartosc1 itd. Czyli zagregowaďż˝ dla
> konkrentych wartosci.
Je�li w Kolumnie2 maj� by� dowolne warto�ci to si� nie da
w taki spos�b, bo to nie b�dzie relacja - ale da si� na przyk�ad
tak:
Wartosc1|0|1
Wartosc1|1|3
Wartosc1|2|2
Wartosc2|0|1
Wartosc2|1|1
itd.
> czyli na wyjsciu chcialbym otrzymac:
> Kolumna1 | 0|1|2
> -----------------------------
> _Wartosc1| 1|3|1
> _Wartosc2| 1|1|0
> _Wartosc3| 0|2|1
A to ju� sobie "u�o�ysz".
--
�K (2009-12-26 22:37:22)