Suma kolumny z dołączonej tabelii - nie wyświetla rekordów jeśli kolumna zwraca NULL

0

Witam. Muszę obliczyć ranking użytkownika. Do obliczenia, potrzebuję zsumować wartości z danej kolumny, z dołączonej tabeli (oddane głosy na użytkownika) - wiadomo, że nie każdy użytkownik będzie miał głosy więc będzie miała kolumna wartość NULL.

Gdy używam takiego zapytania:

SELECT DISTINCT a.id, a.name, a.surname, SUM(b.rate_1) as rate, FROM `users` AS a LEFT JOIN `votes` AS b ON a.id=b.user_id WHERE a.hide=0 AND a.name=:name LIMIT 10;

Wyświetla mi tylko użytkowników, którzy mają jakieś głosy, a tych którzy nie mają nie wyświetla.

Szukałem w google, próbowałem użycia GROUP BY (i niby pokazuje rownież tych bez głosów, ale pokazuje mi także duplikaty i wyeliminowanie ich przez GROUP BY czy DISTINCT nie działa), IFNULL, IF - nic nie pomogło...

Proszę o pomoc.

1
SELECT a.id, a.name, a.surname, SUM(b.rate_1) AS rate FROM `users` AS a LEFT JOIN `votes` AS b ON a.id=b.user_id WHERE a.hide=0 AND a.name=:name GROUP BY a.id LIMIT 10;

Założenie, że a.id jest kluczem, jeśli nie, to w GROUP BY trzeba dać: a.id, a.name, a.surname

0

Dzięki, pomogło. Myślałem, że sprawdziłem już tą "kombinację" ale chyba jednak nie ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1