Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]1 zapytanie a 2 tabele
robos85
post
Post #1





Grupa: Zarejestrowani
Postów: 466
Pomógł: 11
Dołączył: 21.09.2006
Skąd: Szczecin

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


Otóż jak wykonać 1 zapytaniem takie coś:

Mam 2 tabele: kategorie i zdjęcia. W tabeli zdjęcia znajduje się pole kat_id które przyporządkowuje zdjęcie do odpowiedniej kategorii.

Chciałbym teraz 1 zapytaniem wyświetlić listę kategorii (pobrać wszystkie pola z tabeli) oraz obok podać ilość zdjęć w danej kategorii.

Jak wykonać to 1 zapytaniem?

z góry dzięki za pomoc

Jest coś lepszego od tego?
  1. SELECT k.*, COUNT(z.id) FROM kategorie k JOIN zdjecia z ON k.id=z.kat_id GROUP BY k.nazwa
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Takie coś zdecydowanie lepiej (pod względem wydajności) jest zaprojektować w nieco inny sposób. W tabeli kategorie dodajesz jedną kolumne z ilością zdjęć do niej przypisanych.
Go to the top of the page
+Quote Post
robos85
post
Post #3





Grupa: Zarejestrowani
Postów: 466
Pomógł: 11
Dołączył: 21.09.2006
Skąd: Szczecin

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


Yhm. A jak to moje zapytanie przerobić tak, żeby pokazywało też kategorie gdzie nie ma zdjęcia?
Bo teraz działa ale pokazuje tylko te gdzie sa jakieś zdjęcia:/
Go to the top of the page
+Quote Post
simple programme...
post
Post #4





Grupa: Zarejestrowani
Postów: 74
Pomógł: 5
Dołączył: 17.07.2007
Skąd: Krakow

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


SELECT * FROM tabela1 UNION SELECT * FROM tabela2
10 sekund w Google.


--------------------
Pozdrawiam
Go to the top of the page
+Quote Post
Crozin
post
Post #5





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Zamiast JOIN użyj LEFT JOIN
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 Aktualny czas: 21.08.2025 - 03:25