Du hast ja gesagt, du willst die Anzahl der verschienden Werte und nicht die Differenz zur Gesamtanzahl zählen.
Das Rechnen kannst du so machen, allerdings geht auch das einfacher.
Der Nulliff() entspricht ja einem case-Ausdruck. Du kannst also beliebige Case-Ausdrücke verwenden um etwas zu zählen oder zu summieren.

count(case when feld <> 'ABC1' then feld else null end) <= liefert NULL wenn nur ABC1 vorhanden.
sum(case when feld <> 'ABC1' then 1 else 0 end) <= liefert 0 wenn nur ABC1 vorhanden.

Case-Ausdrücke kannst du an allen Stellen verwenden, sogar im Join on als auch im Where, Group oder Having.