Re: [pgsql-advocacy] Oracle buys Innobase

From: "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>
To: Dann Corbit <DCorbit(at)connx(dot)com>
Cc: Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com>, "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>, Richard_D_Levine(at)raytheon(dot)com, pgsql-hackers(at)postgresql(dot)org, pgsql-general(at)postgresql(dot)org
Subject: Re: [pgsql-advocacy] Oracle buys Innobase
Date: 2005-10-19 19:53:26
Message-ID: 20051019165145.L995@ganymede.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

On Wed, 19 Oct 2005, Dann Corbit wrote:

>> -----Original Message-----
>> From: Stephan Szabo [mailto:sszabo(at)megazone(dot)bigpanda(dot)com]
>> Sent: Wednesday, October 19, 2005 12:39 PM
>> To: Dann Corbit
>> Cc: Marc G. Fournier; Richard_D_Levine(at)raytheon(dot)com; pgsql-
>> general(at)postgresql(dot)org
>> Subject: Re: [pgsql-advocacy] [GENERAL] Oracle buys Innobase
>>
>> On Wed, 19 Oct 2005, Dann Corbit wrote:
>>
>>> Yes, clearly that is the wrong result according to the SQL standard.
>>>
>>> Here is a SQL*Server query:
>>> select 1 where 'a' = 'a ' AND 'a' = 'a ' AND 'a ' = 'a '
>>>
>>> It returns (correctly): 1
>>
>> Doesn't that depend on the collating sequence in use, or is a NO PAD
>> collating sequence not allowed here?
>
> If the implementation defines constants as NO PAD and the implementation
> defined pad character is something other than space, then they could
> compare unequal.
>
> I would find that implementation disturbing. But I am easily bent out
> of shape.
>
> The attached HTML file in my earlier post is the official quote from the
> SQL 99 standard. That is the formal and correct definition, far
> superior to my off the cuff approximations.

'k, if I'm reading the right section (you say its bolded, but I'm using
pine which doesn't seem to do a good job of reading HTML):

===========
d) Depending on the collating sequence, two strings may compare as
equal even if they are of different lengths or contain different
sequences of characters. When any of the operations MAX, MIN, and
DISTINCT reference a grouping column, and the UNION, EXCEPT, and
INTERSECT operators refer to character strings, the specific value
selected by these operations from a set of such equal values is
implementation-dependent.
===========

I think the key part of that 'clause' is "two strings *may* compare as
equal" ... sounds implementation dependent to me, depending on how the
implementor interprets it ... or am I reading the wrong section?

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ: 7615664

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Dann Corbit 2005-10-19 19:59:31 Re: [pgsql-advocacy] Oracle buys Innobase
Previous Message Dann Corbit 2005-10-19 19:46:15 Re: [pgsql-advocacy] Oracle buys Innobase

Browse pgsql-hackers by date

  From Date Subject
Next Message Dann Corbit 2005-10-19 19:59:31 Re: [pgsql-advocacy] Oracle buys Innobase
Previous Message Dann Corbit 2005-10-19 19:42:55 Re: [pgsql-advocacy] Oracle buys Innobase