Reading the MSDN article about T-SQL CREATE PROCEDURE statement, I've come across a sentence that I just can not understand.
In the "Best Practices" section, they say:
Use modification statements that convert nulls and include logic that eliminates rows with null values from queries. Be aware that in Transact-SQL, NULL is not an empty or “nothing” value. It is a placeholder for an unknown value and can cause unexpected behavior, especially when querying for result sets or using AGGREGATE functions.
Can anybody explain me, what do they mean? I am confused, because I always thought that NULL means empty value, or missing value, or just "nothing".
Update: I've just found a similar question. They spot that in comparison, NULL != NULL. So NULL values can never be equal to anything. That's good point. Is there anything else?