sql >> Databasteknik >  >> RDS >> Mysql

Hitta antalet tomma eller NULL kolumner i en MySQL-tabell

Om tanken är att få ett resultat ungefär så här:

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

..använd:

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

...eller:

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. Är detta en riktig lång omröstning?

  2. MySQL-tabellnamn som parameter

  3. Returdatum som ddmmååå i SQL Server

  4. Kan inte ansluta till MySQL-server på (ip eller domännamn)