RE: [Fwd: Unexpected DISTINCT?]

Bijan,

IMHO, explicit ALL and implementation-specific default could be nice. But if
select is implementation-dependent then UNION should become UNION ALL /
UNION / UNION DISTINCT with unspecified behaviour for UNION. That's OK for
me.

In addition, BEST EFFORT UNION can be good addition for distributed systems.
But this is too specific for common use and it has as significant
disadvantage as two extra keywords. So this is not for the core of the
language.

> SQL defaults to ALL because, I think, of the strong perception that it is
"always" cheaper.
Yes, the perception is true for 'not very distributed' systems. SPARQL is
definitely not similar to SQL in this aspect.

Best Regards,
Ivan Mikhailov
OpenLink Software.

-----Original Message-----
From: public-rdf-dawg-request@w3.org [mailto:public-rdf-dawg-request@w3.org]
On Behalf Of Bijan Parsia
Sent: Monday, March 05, 2007 2:58 PM
To: Lee Feigenbaum
Cc: RDF Data Access Working Group
Subject: Re: [Fwd: Unexpected DISTINCT?]


In SQL, SELECT has two parameters, ALL and DISTINCT with ALL being implicit.

One way to handle the sort of variability in result set desired here is to
make ALL *not* be implicit, but have the bare SELECT mean something like
"something between ALL and DISTINCT depending on the implementation".

SQL defaults to ALL because, I think, of the strong perception that it is
"always" cheaper (which in fact depends on the relative cost of pruning dups
and transmitting them). Making the default "whatever the implementation
thinks is cheapest" seems in the spirit of this and ALL allows access to the
max sane result set (plus, implementations can chose not to support it...it
can be tricky in OWL since you'd have to get all derivations...not
impossible but non-trivial).

Cheers,
Bijan.

Received on Monday, 5 March 2007 13:23:10 UTC