Wpis z mikrobloga

Mirki, mam zaćmienie małe w pracy. Przygotowuję raport w Fast Reports. Wyobraźcie sobie, że mam tabelę w której mam użytkowników. Każdy z nich ma swój numer ID, ma tez grupę o ID 1, 2 albo 3. Potrzebuję zapytania, które zsumuje mi ilu jest użytkowników kazdej grupy i wyniki przedstawi w kolejnych kolumnach (sum i group by więc odpada). Potrzebuję jeden wiersz trzema kolumnami.

Kolumna z ID grupy jest not null. Jak tutaj joina użyć?

#sql
  • 9
@AlmostDivine: Dzięki, ale to średnio może mi pomóc ;) Ja nie potrzebuję zliczenia tego, bo to sobie od reki mogę zrobić. Potrzebuję tego do późniejszego wykorzystania w generatorze raportów dostępnym dla klienta przez przygotowany portal.
@msq: @RomantycznyRoman: @crack_witch:

Ostatecznie znalazłem takie rozwiązanie:

select count(r1.id), COUNT(r2.id), COUNT(r3.id)

from respondents r0

left join RESPONDENTS r1

on r0.ID = r1.id and r1.GRUPA = 1

left join RESPONDENTS r2

on r0.ID = r2.id and r2.GRUPA = 2

left join RESPONDENTS r3

on r0.ID = r3.id and r3.GRUPA = 3

Najpierw wyświetlam wszystkie rekordy, a później dokładam tak kolejne dane, że wyświetla mi null gdzie Grupa nie jest równa