Re: Wish: remove ancient constructs from Postgres - Mailing list pgsql-general

From Stephan Szabo
Subject Re: Wish: remove ancient constructs from Postgres
Date
Msg-id 20060227091612.E39968@megazone.bigpanda.com
Whole thread Raw
In response to Re: Wish: remove ancient constructs from Postgres  ("Nikolay Samokhvalov" <samokhvalov@gmail.com>)
List pgsql-general
On Mon, 27 Feb 2006, Nikolay Samokhvalov wrote:

>it's completely different thing. look at the spec and you'll
>understand the difference. in two words, with 'DISTINCT ON' we lose
>some values (from some columns), when UNION not (it just removes
>duplicates, comparing _entire_ rows).

No it's not, really.  Read the spec.

The output of a union on a text field is non-deterministic (due to some
collation choices).  This means that the output of the query may be
determined by an effectively random choice of which value to use.

Basically AFAICT something like (modulo simple errors):

select foo from (
 select foo from tablea union select foo from tableb
)
where foo = 'A' collate case_sensitive

can give different results in the case of tablea having 'A' and tableb
having 'a' if the union is using a case insensitive comparison.


pgsql-general by date:

Previous
From: "Istvan Nagy"
Date:
Subject: problem with windows xp sp2 and postgres-8.1.3
Next
From: Bernhard Weisshuhn
Date:
Subject: Re: ltree + gist index performance degrades significantly over a night