Re: [Bizgres-general] A Guide to Constraint Exclusion (
Simon Riggs <simon@2ndquadrant.com>
From: Simon Riggs <simon@2ndquadrant.com>
To: Luke Lonergan <llonergan@greenplum.com>
Cc: bizgres-general <bizgres-general@pgfoundry.org>, pgsql-hackers@postgresql.org
Date: 2005-07-14T22:22:03Z
Lists: pgsql-hackers
On Thu, 2005-07-14 at 15:16 -0700, Luke Lonergan wrote: > Simon, > > > SELECT > > FROM Fact, Dimension > > WHERE Fact.Key = Dimension.Key > > AND Dimension.DescriptiveField = 'Blah' > > So, what happens with this: > > SELECT > FROM Fact, Dimension > WHERE Fact.Key = Dimension.Key > AND Fact.part = 100; > > With Fact defined with 3 partitions: > CHECK(Part BETWEEN 1 AND 1000) > CHECK(Part BETWEEN 1001 AND 2000) > CHECK(Part BETWEEN 2001 AND 3000) > > Will the 2nd and 3rd partitions be eliminated? Yes. That is because the clause "part = 100" is a direct restriction on the partitioned table, using an immutable operator and a constant. Best Regards, Simon Riggs