Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zliczanie powiązanych wierszy
Forum PHP.pl > Forum > Bazy danych > MySQL
mario
Mam dwie tabele:

"galeria_dzialy"

+---+---------------+
| id | nazwa |
+---+---------------+
| 1 | pierwsza galeria |
| 2 | druga galeria |
+---+---------------+

"galeria"

+---+-----+-------+
| id | dzial | plik |
+---+-----+-------+
| 1 | 1 | ala.jpg |
| 2 | 1 | xyz.jpg |
| 3 | 2 | fuj.jpg |
+---+-----+-------+

w jaki sposob wyciagnac jednym zapytaniem wszystkie dzialy i jednoczesnie ilosc zdjec przypisanych do tego dzialu. Wyciagam to dwoma zapytaniami w petli:

  1.  
  2.  
  3. $wynik = $_sql -> zapytanie("SELECT * FROM " . $config_baza["prefix"] . "_galeria_dzialy", $baza);
  4.  
  5. while ($r= mysql_fetch_array($wynik))
  6. {
  7. $id = $r ["id"];
  8. $nazwa = $r ["nazwa"];
  9.  
  10. $zdjecia = $_sql -> wynik ($_sql -> zapytanie("SELECT COUNT(id) FROM " . $config_baza["prefix"] . "_galeria WHERE dzial = '" . $id . "'", $baza));
  11. }
  12.  
  13.  



phpion
  1. SELECT *, (SELECT COUNT(*) FROM galeria WHERE galeria.dzial = galeria_dzialy.id) AS ile FROM galeria_dzialy;

Można również poprzez JOINa i grupowanie, ale to chyba będzie szybsze.
mario
Super! Wielkie dzieki ziomal ze Slaska biggrin.gif
phpion
Cytat(mario @ 22.12.2009, 10:51:25 ) *
Super! Wielkie dzieki ziomal ze Slaska biggrin.gif

Dla ścisłości: Sosnowiec i Dąbrowa Górnicza to Zagłębie, a nie Śląsk winksmiley.jpg
mario
tak tak.... ale wojewodztwo jest "slaskie" jeszcze raz dzieki!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.