No.
Questa domanda
SELECT DISTINCT column_name, table_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE column_name IS NOT NULL
restituirà tutte le righe che hanno un valore nella colonna "nome_colonna".
Tutte le righe di quella tabella avranno sempre un valore nella colonna "nome_colonna".
Hai solo bisogno di sapere quante colonne sono annullabili e quante non sono annullabili?
SELECT is_nullable, COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY is_nullable;
Contare per nome della tabella? Penso che tu possa usarlo.
SELECT table_name, is_nullable, count(*)
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY table_name, is_nullable
ORDER BY table_name, is_nullable;