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ć?
@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.
Kolumna z ID grupy jest not null. Jak tutaj joina użyć?
#sql
- ńauczyciel informatyki w polskiej szkole (⌐ ͡■ ͜ʖ ͡■)
Komentarz usunięty przez autora
http://stackoverflow.com/questions/7674786/mysql-pivot-table
http://www.dba-oracle.com/t_pivot_examples.htm
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
Komentarz usunięty przez autora