web-dev-qa-db-fra.com

Instruction COUNT CASE et WHEN dans MySQL

Comment utiliser COUNT CASE et WHEN dans une requête MySQL, pour compter quand les données sont NULL et quand elles ne sont pas NULL dans une requête MySQL?

30
Ivan Tanasijevic

Utilisation:

SELECT SUM(CASE 
             WHEN t.your_column IS NULL THEN 1
             ELSE 0
           END) AS numNull,
       SUM(CASE 
             WHEN t.your_column IS NOT NULL THEN 1
             ELSE 0
           END) AS numNotNull
  FROM YOUR_TABLE t

Cela résumera la colonne NULL et non NULL pour la table entière. Il est probable que vous ayez besoin d'une clause GROUP BY, selon les besoins.

74
OMG Ponies