nullストレージの適切な説明については、これを読むことをお勧めします:SQLServerは実際にNULLをどのように保存しますか 。つまり、null / not nullビットは、行のnullビットマップという別の場所に格納されます。
記事から:
したがって、実際の値 8ビット列が1バイトに格納されている場合、行のnullビットマップには、その列がNULLかどうかを示す余分なビットがあります...したがって、カウント方法によって異なります。 完全に 正確な8ビット列は2バイトを使用します 、2つの異なる場所に分割するだけです。