Jen McCown warns against NULL in NOT IN statements:
The IF statement asks: “is 1 in the collection of values (2, NULL)?” And we must say, “ah, no idea. That can’t be proven. Therefore we can’t return true.”
The value 1 cannot be determined to not be in the set of (2, NULL).
NULL is a strange bird.