sql >> Database >  >> RDS >> Mysql

Vind het aantal LEGE of NULL kolommen in een MySQL-tabel

Als het idee is om een ​​resultaat als volgt te krijgen:

col       emp    
------    ------    
FName        15  
LName         2  
Age          22 

..gebruik:

SELECT 'FName' AS col, SUM(CASE FName IS NULL || FName='' THEN 1 ELSE 0 END) as emp FROM MyTable
UNION
SELECT 'LName' AS col, SUM(CASE LName IS NULL || LName='' THEN 1 ELSE 0 END) as emp FROM MyTable
UNION
SELECT 'Age' AS col, SUM(CASE Age IS NULL || Age='' THEN 1 ELSE 0 END) as emp FROM MyTable

...of:

SELECT SUM(CASE t.fname IS NULL OR t.fname = '' THEN 1 ELSE 0 END) AS fname_count,
       SUM(CASE t.lname IS NULL OR t.lname = '' THEN 1 ELSE 0 END) AS lname_count,
       SUM(CASE t.age IS NULL OR t.age = '' THEN 1 ELSE 0 END) AS age_count
  FROM MYTABLE t


  1. Hoe het kolomgegevenstype in de SQL-database te wijzigen zonder gegevens te verliezen

  2. wat betekent niet-geverifieerde gebruiker in MYSQL?

  3. Spoolopdracht:voer geen SQL-instructie uit naar bestand

  4. Wordt MySQL LIMIT toegepast voor of na ORDER BY?