Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][POMOC], zapytanie COUNT + JOIN LEFT
krowkaMU
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 18.05.2015

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


Mam dwie tabele: inwestycja i miejscowosc

Tabela inwestycja:
id,id_miejscowosc

Tabela miejscowosc:
id,miejscowosc

I teraz chcialem pobrac wszystkie rekordy z bazy miejscowosc i do nich zliczyć ilość wystąpień w tablicy inwestycja.

Przy zapytaniu:
  1. SELECT miejscowosc.miejscowosc, inwestycja.id
  2. FROM miejscowosc
  3. LEFT JOIN inwestycja ON miejscowosc.id = inwestycja.id_miejscowosc
  4. ORDER BY miejscowosc.miejscowosc
  5. COLLATE utf8_polish_ci


otrzymuje wynik:
miejscowosc, id
Dobrzykowice NULL
Domosław NULL
Iwiny NULL
Karwiany 8
Mędłów NULL
Mirków NULL
Nadolice Wielkie NULL
Ramiszów NULL
Siechnice NULL
Ślęza NULL
Wrocław 1
Wrocław 2
Wrocław 3
Wrocław 4
Wrocław 5
Wrocław 6
Wrocław 7
Wysoka NULL

A teraz chciałem zrobić to samo ale właśnie zliczyć tylko ilość wystąpień dla poszczególnej miejscowości:
Zapytanie:
  1. SELECT miejscowosc.miejscowosc, COUNT( inwestycja.id_miejscowosc ) AS ilosc_inwestycji_w_miejscowosc
  2. FROM miejscowosc
  3. LEFT JOIN inwestycja ON miejscowosc.id = inwestycja.id_miejscowosc
  4. GROUP BY inwestycja.id_miejscowosc
  5. ORDER BY miejscowosc.miejscowosc
  6. COLLATE utf8_polish_ci


Otrzymuje wynik:
miejscowosc, ilosc_inwestycji_w_miejscowosc
Dobrzykowice 0
Karwiany 1
Wrocław 7

Tu moje pytanie co zrobić aby dostać pełna tabele miejscowosc i jezeli dla tej pozycji nie ma nic w tabeli inwestycja wyniku NULL ?
Gdzie popełniam błąd ?
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 - 19:19