A column that is NULL is never considered empty. NULL is "unknown". That's the best way to think about it.
So, what is the length of an unknown value? The only possible answer is unknown (NULL).
Is an unknown value > 7? Again, that too can only be unknown (NULL).
Remember, a WHERE clause must be true to include a row. Not "not false" even, but affirmatively, 100% true. That's why if you have a comparison in the WHERE you technically don't also have to test for NULL, because NULL will never pass the comparison anyway.
WHERE column1 = 5
Would also exclude NULL column1 values, since those are not proven equal to 5.
The biggest impact is something like this:
WHERE ISNULL(column1, '') <> ''
The function on the column will prevent an index seek from being used, and you don't need it here.
WHERE column1 <> ''
will automatically leave out NULLs, for the same reason as before.