Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Policz wartość w polach
Forum PHP.pl > Forum > Bazy danych > MySQL
Wieviór
Jak policzyć ile razy w polu występuje jakaś wartość?
harmag
  1. SELECT count(*) AS ilosc,pole FROM tabela GROUP BY pole


dla tabeli

Kod
pole
--------
1
1
2
2
2
3
3


zwroci ci

Kod
ilosc | pole
------------
2     | 1
3     | 2
2     | 3
Wieviór
Nie do końca kumam sad.gif

Mam tabele "kategorie".
Mam w tabeli "zwierzaki" pole "kategoria".

  1. <?php
  2.  
  3. echo '<b>Wybierz kategorię</b><br>';
  4.  $zapytanie2 = (&#092;"SELECT * FROM kategorie ORDER BY 'nazwa'\"); 
  5.  $wykonaj2 = mysql_query($zapytanie2); 
  6.  while($rekord2 = mysql_fetch_array($wykonaj2)) 
  7. {
  8. echo '<a href=\"zwierzaki.php?kategoria='.$rekord2['nazwa'].'\">'.$rekord2['nazwa'].'</a><--tutaj skrypt który liczy ile razy w polu \"kategoria\" w tabeli \"zwierzaki\" występuje dana kategoria--><br>';
  9. }
  10. ?>
popbart
  1. SELECT kategorie.nazwa, count(zwierzaki.id_kat) AS ile
  2. FROM kategorie LEFT JOIN zwierzaki USING (id_kat)
  3. GROUP BY kategorie.id_kat
  4. ORDER BY kategorie.nazwa

Użyłem tutaj using(id_kat) bo zawsze nazywam tak samo klucz obcy jak jego rodzic (łatwiej się tworzy zapytania i baza jest bardziej czytelna).

Jeżeli masz nazwy różne to daj zamiast using np.
"on kategorie.id=zwierzaki.id_kategoria".
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.