|
Posted by Hugo Kornelis on 04/05/07 20:55
On Thu, 29 Mar 2007 18:08:00 -0700, Ed Murphy wrote:
>--CELKO-- wrote:
>
>> All data types have to be NULL-able in SQL. Having a BOOLEAN type
>> would lead to 4 valued logic with inconsistent rules about how NULLs
>> propagate. And the various vendor extension do not work or port
>> either.
>
>It seems like dropping UNKNOWN would leave a sensible set of rules:
>
> and | T N F or | T N F not |
> ----+------ ---+------ ----+--
> T | T N F T | T T T T | F
> N | N N F N | T N N N | N
> F | F F F F | T N F F | T
>
>Am I overlooking anything?
Hi Ed,
You've overlooked the basic rule of NULL propagation: any expression
involving NULL results in NULL. In the tables above, there are
exceptions to this rule, such as NULL AND FALSE resulting in FALSE, and
TRUE OR NULL resulting in TRUE.
--
Hugo Kornelis, SQL Server MVP
My SQL Server blog: http://sqlblog.com/blogs/hugo_kornelis
Navigation:
[Reply to this message]
|