Имейте в виду, что Count () игнорирует нулевые значения, поэтому, если вам нужно разрешить нулевое значение в качестве собственного отдельного значения, вы можете сделать что-то хитрое, например:
select count(distinct my_col)
+ count(distinct Case when my_col is null then 1 else null end)
from my_table
/