Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Pobranie ilości rekordów z danymi
Lirdoner
post
Post #1





Grupa: Zarejestrowani
Postów: 500
Pomógł: 1
Dołączył: 29.09.2009

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


Witam, chcę pobrać wszystkie dane z tabeli z użytkownikami i chciałbym aby do tych danych dołączyła suma rekordów z innej tabeli w których pole user_id jest równe id danego użytkownika.
Próbowałem coś w tym stylu
  1. $sql = 'SELECT COUNT( c.id ) AS comments,u.* FROM uzytkownicy u, komentarze c WHERE u.id = c.user_id LIMIT 50';

jednak to zapytanie nie zwraca mi wszystkich rekordów. Jak mogę to poprawić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
jednak to zapytanie nie zwraca mi wszystkich rekordów. Jak mogę to poprawić?
zamiast dodawac obie tabele w FROM, to komentarze lacz przy pomocy LEFT JOIN. Wowczas bedzie dzialac jak chcesz. Dodanie c.* nie rozwiazuje w zaden sposob problemu

ps: skoro robisz limit 50, to licz sie z tym, ze tak czy siak w pewnym momencie nie pobierze ci wszystkich userow.... wystarczy ze jeden user bedzie mial 51 komentarzy, to zapytanie zwroci ci tylko tego jednego usera.

ps2: skoro robisz COUNT dla komentarzy danego usera, to musisz jeszcze zrobic GROUP BY po userze.
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 4.10.2025 - 05:25