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 08:58:43 UTC