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

Mysql:Počítání záznamů (včetně nuly) za měsíc

Nejjednodušší způsob, jak toho dosáhnout v MySQL, je vytvořit tabulku nazvanou months který uvádí všechny měsíce, které vás zajímají, a použijte LEVÝ JOIN ke svému stolu.

SELECT
   YEAR(time) AS year
   MONTH(time) AS month,
   COUNT(myTable.year) AS cnt, 
FROM months
LEFT JOIN myTable 
    ON months.year = myTable.year
    AND months.month = myTable.month
GROUP BY months.year, months.month
ORDER BY months.year, months.month

Protože se však většinou jedná o problém s prezentací, je často jednodušší spustit dotaz tak, jak to již děláte, a transformovat výsledek v klientovi (např. PHP).




  1. CHYBA 1064 (42000) v MySQL

  2. Počet registrací uživatelů mysql mezi skupinami

  3. jak používat kanonické funkce v Entity Framework a Mysql

  4. Automatický přírůstek ID mysql nezačíná od 0