Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL COUNT() e null

Corretta. COUNT(*) è tutte le righe della tabella, COUNT(Expression) è dove l'espressione è solo non null.

Se tutte le colonne sono NULL (che indica che non hai una chiave primaria, quindi questo non dovrebbe accadere in un database normalizzato) COUNT(*) ancora restituisce tutte le righe inserite. Basta non farlo.

Puoi pensare che il simbolo * significhi "nella tabella" e non "in qualsiasi colonna".

Questo è trattato nel Manuale di riferimento di MySQL .