Search Postgresql Archives

Re: Constraint exclusion issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jan 16, 2010 at 11:02 AM, Mathieu De Zutter
<mathieu@xxxxxxxxxxxx> wrote:
> Hi,
>
> I'm trying to make constraint exclusion work correctly in a query with
> only one parameter, but I have some issues.
> Please have a look at the scenario below and tell me how I can improve it.
>
> Thanks!
>
>
> -- I create an inheritance relationship with a check constraint in the child
>
> shs-dev=# create table parent (c char, n integer);
> CREATE TABLE
> shs-dev=# create table child1 ( ) inherits (parent);
> CREATE TABLE
> shs-dev=# alter table child1 add check (c = 'a');
> ALTER TABLE
>
> -- I query on a row containing both attributes, and pgsql 8.4
> correctly skips the child table because of the constraint
>
> shs-dev=# explain select * from parent where (c,n) = ('b',0);
>                                                  QUERY PLAN
> --------------------------------------------------------------------------------------------------------------
>  Result  (cost=0.00..39.10 rows=1 width=12)
>   ->  Append  (cost=0.00..39.10 rows=1 width=12)
>         ->  Seq Scan on parent  (cost=0.00..39.10 rows=1 width=12)
>               Filter: ((c = 'b'::bpchar) AND (n = 0))
>
> -- Ok, lets see if I can parameterize this with only one parameter... NO!
>
> shs-dev=# explain select * from parent where (c,n) = '("b",0)';
> ERROR:  input of anonymous composite types is not implemented

Shouldn't that be 'b' not "b" ?

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux