Re: How to push predicate down

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: salah jubeh <s_jubeh(at)yahoo(dot)com>
Cc: Volodymyr Kostyrko <c(dot)kworr(at)gmail(dot)com>, pgsql <pgsql-general(at)postgresql(dot)org>
Subject: Re: How to push predicate down
Date: 2012-01-26 16:47:39
Message-ID: 6333.1327596459@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

salah jubeh <s_jubeh(at)yahoo(dot)com> writes:
> Sorry, The scenario, that I posted was not correct. I have traced it and the union was not the problem, As I said the query excusion plan is over 5000 line. I have created a scenario which similar to the scenario causes the problem I have.

> [ query uses EXCEPT not UNION ]

Hmm. The code explicitly won't push conditions down through an EXCEPT:

* 3. If the subquery contains EXCEPT or EXCEPT ALL set ops we cannot push
* quals into it, because that could change the results.

I remember coming to the conclusion that this is safe for
UNION/INTERSECT but not EXCEPT, but right at the moment I'm not sure why
I thought that --- it seems like a qual that suppresses specific rows
should suppress all matching copies.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message panam 2012-01-26 17:56:33 Re: Best way to create unique primary keys across schemas?
Previous Message David W Noon 2012-01-26 16:29:17 Re: Let-bindings in SQL statements