"Decibel!" <decibel@decibel.org> writes:
> On Aug 8, 2008, at 3:23 PM, Tom Lane wrote:
>> * has no set operations (UNION etc), grouping, set-returning functions
>> in the SELECT list, LIMIT, or a few other funny cases
>
>
> Couldn't union/union all be treated as
>
> EXISTS(a)
> OR EXISTS(b)
Kind of confused by what you mean here. Can you give an example?
The usual transformation to consider with UNION is to transform
SELECT ... WHERE x OR y
into
SELECT ...WHERE x
UNION ALL
SELECT ...WHERE y AND NOT x
(modulo handling NULLs properly)
-- Gregory Stark EnterpriseDB http://www.enterprisedb.com Ask me about EnterpriseDB's RemoteDBA services!