Re: 3vl 2vl and NULL
Date: Thu, 15 Dec 2005 00:12:55 +0100
Message-ID: <6d91q11tft1pif358jkiu6d2qb1v0ddh1j_at_4ax.com>
On 13 Dec 2005 12:37:00 -0800, dawn wrote:
>Hugo Kornelis wrote:
Hi Dawn,
I have a lot more trouble thinking of a situation where it IS the case.
>> On 10 Dec 2005 05:22:38 -0800, dawn wrote:
>>
>> (snip)
>> >> "Show me all family members who are NOT older than Aunt Marge" - should
>> >> Uncle Vernon be included or not? Why?
>> >
>> >Two choices of how to ask the question --
>> >1) Show me all members who have an age where that age is less than or
>> >equal to Aunt Marge's age
>> >
>> >In this case Uncle Vernon does not show up because he does not have an
>> >age
>> >
>> >2) Show me all family members who do not have an age greater than Aunt
>> >Marge's
>> >
>> >In this case Uncle Vernon does show up
>>
>> Hi Dawn,
>>
>> So the results of the query would depend on exactly how you formulate
>> it?
>
>I cannot think of any situation where that is not the case, can you ;-)
In SQL, the following queries will return the same results:
SELECT Name
FROM MyFamily
WHERE Age <= (SELECT Age FROM MyFamily WHERE Name = 'Aunt Marge')
SELECT Name
>> Hmmm. AFAICT, this means that in your 2VL algebra, missing data results
See the above queries. Rules of Booolean algebra say that
NOT (Age(x) > Age(Aunt Marge))
FROM MyFamily
WHERE NOT (Age > (SELECT Age FROM MyFamily WHERE Name = 'Aunt Marge'))
>> in ~(A) not being the same as (~A).
>
>No, I don't think so, but before I respond to more, can you give me an
>example that makes you think this? Thanks. --dawn
should be the same as
(Age(x) <= Age(Aunt(Marge))
Your explanation made me believe that this is not the case in your 2VL system.
Best, Hugo
-- (Remove _NO_ and _SPAM_ to get my e-mail address)Received on Thu Dec 15 2005 - 00:12:55 CET