Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Suma kolumny z dołączonej tabelii - nie wyświetla rekordów jeśli kolumna zwraca NULL
adrianpl20
post 27.07.2015, 16:41:35
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 16
Dołączył: 20.02.2014

Ostrzeżenie: (10%)
X----


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:
  1. 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.
Go to the top of the page
+Quote Post
trueblue
post 27.07.2015, 17:10:28
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


  1. WHERE (a.hide=0 OR a.hide IS NULL) AND (a.name=:name OR a.name IS NULL) LIMIT 10;


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 15:06