OK, so we have :
COUNT( constant ) is the number of records returned by the query
COUNT( DISTINCT ... ) is self explanatory
COUNT( ALL ... ) is the default and is opposed to DISTINCT
COUNT( NULL ) is zero; although when I query:
SELECT COUNT( NULL ) it returns the error:
Msg 8117, Level 16, State 1, Line 42
Operand data type NULL is invalid for count operator.
Any idea why this ?