Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ermitteln Sie die Anzahl der EMPTY- oder NULL-Spalten in einer MySQL-Tabelle

Wenn die Idee darin besteht, ein Ergebnis wie dieses zu erhalten:

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

..verwenden:

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

...oder:

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