Thank you for a nice easy question.
But I'm not sure about explanation (or maybe I'm just reading it wrong):
The Null value also matches the condition in case of Not Operators (<>,Not in ,Not like..) since it could possibly be a match.
I think any comparison against NULL will yield Unknown, which is not True, and therefore records won't be returned.
--Vadim R.