Re: NULLs: theoretical problems?

From: Jan Hidders <hidders_at_gmail.com>
Date: Fri, 24 Aug 2007 23:43:14 -0000
Message-ID: <1187998994.047351.228760_at_q4g2000prc.googlegroups.com>


On 25 aug, 01:35, "V.J. Kumar" <vjkm..._at_gmail.com> wrote:
> Jan Hidders <hidd..._at_gmail.com> wrote innews:1187997608.109540.77720_at_x35g2000prf.googlegroups.com:
>
>
>
> > On 24 aug, 13:50, "V.J. Kumar" <vjkm..._at_gmail.com> wrote:
> >> Jan Hidders <hidd..._at_gmail.com> wrote
> >> innews:1187906563.506451.71800_at_q3g2000prf.googlegroups.com:
>
> >> > On 23 aug, 23:27, "V.J. Kumar" <vjkm..._at_gmail.com> wrote:
> >> >> Let's take a look at it. Could you give a query example and you
> >> >> interpretration of the DEF construct therein ?
>
> >> > SELECT * FROM t WHERE DEF t.a : (t.a = 5 OR TRUE);
>
> >> > is not equivalent with
>
> >> > SELECT * FROM t WHERE t.a = 5 OR TRUE;
>
> >> I do not understand why they are not equivalent.
>
> >> The first SQL predicate, according to your rules, evaluates to
> >> 'true': 'DEF t.a : (t.a = 5 OR TRUE)' -> 'FALSE OR TRUE' -> 'TRUE'
>
> > No, it only evaluates to 'true' if t.a is defined.
>
> Let's nail it down then.
>
> Are you saying that 'DEF t.a : (t.a = 5 OR TRUE)' evaluates to 'false' ?

It evaluates to 'false' if t.a is undefined, and to 'true' if it is defined.

> Please give us the DEF operator interpretation rules. Without the rules
> the discussion quickly becomes rather meaningless, really !

I've already done that twice. So for the third time: The formula "DEF c : f(c)" evaluates to true if c is defined and f(c) evaluates to true, and to false in all other cases.

  • Jan Hidders
Received on Sat Aug 25 2007 - 01:43:14 CEST

Original text of this message