Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql]Problem z count'em
Forum PHP.pl > Forum > Bazy danych > MySQL
yasiek
Mam takie zapytanie - wybiera listę działów i ilość opowiadań dla danego działu.

tabela cms_opowiadania
opowiadanie_id | opowiadanie_dzial | opowiadanie_akceptacja

tabela cms_opowiadania_dzialy
dzial_id | opowiadanie_dzial

  1. SELECT cms_opowiadania_dzialy.*, count( cms_opowiadania.opowiadanie_id )ilOpow
  2. FROM cms_opowiadania_dzialy LEFT JOIN cms_opowiadania
  3. ON cms_opowiadania.opowiadanie_dzial = cms_opowiadania_dzialy.dzial_id
  4. GROUP BY cms_opowiadania_dzialy.dzial_id


opowiadanie_akceptacja - przyjmuje wartosć 1 dla zaakceptowanego lub wartość 0 dla niezaakceptowanego. W tej chwili zapytanie wybiera wszystkie opowiadania. Chciałbym, żeby zliczało tylko te z akceptacją = 1. Da się to jakoś załatwić 1 zapytaniem? (próbowałem dodać WHERE, ale wtedy nie pobiera w ogóle działów, w których nie ma ani jednego opowiadania, lub ani jednego opowiadania zaakceptowanego)

Z góry dzięki winksmiley.jpg
Norbas
W warunku złączenia musisz dodać kolejny:
  1. ...
  2. ON (cms_opowiadania.opowiadanie_dzial = cms_opowiadania_dzialy.dzial_id AND opowiadanie_akceptacja = 1)
  3. ...
yasiek
Dzięki, działa jak najbardziej winksmiley.jpg
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.