sql >> Databáze >  >> RDS >> Mysql

Mysql count vrací nulu, pokud nebyl nalezen žádný záznam

Myslím, že následující to udělá za vás, i když jsem to netestoval. Trik je získat počty vlastností v jedné tabulce a pak doleva připojit tuto tabulku k tabulce měst a převést hodnoty NULL na 0 pomocí IFNULL funkce.

SELECT city_name, IFNULL(property_count, 0)
FROM cities
LEFT JOIN
   (SELECT id_city, count(*) as property_count
    FROM properties
    GROUP BY id_city) city_properties
   USING (id_city);


  1. Kontrola chyb u připravených výpisů CHOP

  2. MySQL:jak získat x počet výsledků na seskupení

  3. GROUP BY pro souvislé řádky v SQL

  4. Nové změny sloupců pouze metadata v SQL Server 2016