Re: So what's null then if it's not nothing?

From: Jon Heggland <heggland_at_idi.ntnu.no>
Date: Wed, 14 Dec 2005 20:32:03 +0100
Message-ID: <MPG.1e0a91a289607a44989746_at_news.ntnu.no>


In article <1134488609.199682.139210_at_g49g2000cwa.googlegroups.com>, boston103_at_hotmail.com says...
>
> > > Not being able to say whether two truth table for arbitrary expressions
> > > are in fact the same. Did not I say that, like, a dozen times ?
> >
> > Wouldn't it be easy to fudge it using some IS NULL construct?
>
> How ?

For example, whenever you feel like comparing two truth tables, instead of checking for each line if (x = y), check if ((x = y) or ((x is null) = (y is null))).

> >And when
> > do you need to do this anyway in a database context? I am looking for an
> > scenario as concrete as my 3VL capital knowledge example; that's why I'm
> > not satisfied with what you've said a dozen times before.
> >
>
> OK. In your system (I cannnot call it logic), where truth tables
> cannot be judged equal, you cannot prove anything (since each
> derivation step is supposed to be truth-preserving and you cannot
> determine that). It may be OK in your system if it's never supposed to
> be used used for any sort of deduction, though.

SQL-99 seems to use "my system" (it isn't *my* system, though; I think it's badly designed). Can you provide a SQL example where there is a serious problem?

> The optimizer cannot do much with your queries as it cannot rearrange
> and transform predicates to achieve better performance.

That, of course, is a good point, but it applies to NULLs in all domains.

-- 
Jon
Received on Wed Dec 14 2005 - 20:32:03 CET

Original text of this message