Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> LEFT JOIN i funkcja agregujaca
osiris
post
Post #1





Grupa: Zarejestrowani
Postów: 121
Pomógł: 15
Dołączył: 19.07.2007

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


Witam

Mam problem z pozornie prostym zapytaniem
Mam dwie tabele:
uzyszkodnicy
--------------
id | nazwa

zdjecia
--------
id | user_id | nr

Chce pobrac liste wszystkich uzyszkodnikow i id pierwszego zdjecia (o najmniejszym nr) jesli wogole jakies posiada (czyli left join). Doszedlem do czegos takiego:

  1. SELECT u.id, u.nazwa, z.id, MIN(z.nr)
  2. FROM users AS u
  3. LEFT JOIN zdjecia AS z ON z.user_id = u.id
  4. GROUP BY z.id


czy takie zapytanie jest optymalne?
probowalem inaczej:
  1. SELECT u.id, u.nazwa, z.id, z.nr
  2. FROM users AS u
  3. LEFT JOIN zdjecia AS z ON z.user_id = u.id
  4. GROUP BY z.id
  5. HAVING z.nr = MIN(z.nr)

Ale niestety to zapytanie nie zwraca mi uzyszkodnikow ktorzy wogole nie posiadaja zdjec.
Jakies pomysly, sugestie?

Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 22.08.2025 - 12:58