Adattato da Oracle:come contare righe null e non null :
SELECT
COUNT(Col1)+COUNT(Col2)+COUNT(Col3)+
COUNT(Col4)+COUNT(Col5)+COUNT(Col6) AS ValuesCount,
6*COUNT(*)-COUNT(Col1)-COUNT(Col2)-COUNT(Col3)-
COUNT(Col4)-COUNT(Col5)-COUNT(Col6) AS NullCount
FROM data
GROUP BY id
COUNT(ColX)
conta solo NOT NULL
i valori. L'aggiunta di quelli per tutte e sei le colonne equivale ovviamente a ValuesCount.COUNT(*)
conta tutte le righe, anche se tutte le colonne all'interno di una riga erano NULL
. Moltiplica per 6 per il numero totale di celle e poi sottrai tutto NOT NULL
valori per ottenere il NULL
contare.