![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 10.06.2007 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
Witam
Główkuję nad tym od kilku godzin i nie mogę dojść dlaczego otrzymuję tak dziwne wyniki. Te zapytania działają prawidłowo:
i
Po złączeniu ich w jedno:
W sytuacji gdy tylko jeden COUNT() jest większy od 0 (lub oba równe 0) wyniki są dobre, dziwne dane pojawiają się wtedy, gdy w obu sumowaniach wynik jest większy od zera. W jednym przypadku gdy tu i tu jest 2 wyświetla się 4, w innym znowu przy liczbie for = 2 suma członków zwiększa się o 1. Nie mam już pomysłów co może tutaj nie grać, proszę o pomoc. Pozdrawiam Ten post edytował Flanker 27.07.2010, 16:47:40 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 855 Pomógł: 145 Dołączył: 17.07.2008 Skąd: High Memory Area Ostrzeżenie: (0%) ![]() ![]() |
Najpierw zliczaj, potem składaj:
Kod SELECT
g.nazwa, f.cnt, c.cnt FROM grupa AS g LEFT JOIN (SELECT id_grupy, COUNT(1) AS cnt FROM forum GROUP BY id_grupy) AS f USING (id_grupy) LEFT JOIN (SELECT id_grupy, COUNT(1) AS cnt FROM czlonkowie_grupy GROUP BY id_grupy) AS c USING (id_grupy) Ten post edytował Mchl 27.07.2010, 22:14:22 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 11:30 |