Angepasst von Oracle:How to count Null- und Nicht-Null-Zeilen :
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)
zählt nur NOT NULL
Werte. Das Hinzufügen dieser Werte für alle sechs Spalten ergibt natürlich ValuesCount.COUNT(*)
zählt alle Zeilen, auch wenn alle Spalten innerhalb einer Zeile NULL
waren . Multiplizieren Sie mit 6 für die Gesamtzahl der Zellen und subtrahieren Sie dann alle NOT NULL
Werte, um den NULL
zu erhalten zählen.