Re: posgres optimizer not using the index on hstore HELP - Mailing list pgsql-sql

From Tom Lane
Subject Re: posgres optimizer not using the index on hstore HELP
Date
Msg-id 16532.1468966010@sss.pgh.pa.us
Whole thread Raw
In response to posgres optimizer not using the index on hstore HELP  (adam <adhamm31@hotmail.com>)
List pgsql-sql
adam <adhamm31@hotmail.com> writes:
> I have a simple query select on the hstore attribute "EMAIL_ADDRESS". but the
> thing is i'm using a parameter in the query to specify which hstore
> attribute I want to access, and when using a parameter the index which I
> created is suppressed; whereas when I hard code the attribute
> "EMAIL_ADDRESS" then the index is used.

WFM:

regression=# create extension hstore;
CREATE EXTENSION
regression=# create table foo(f1 hstore);
CREATE TABLE
regression=# create index on foo ((f1->'bar'));
CREATE INDEX
regression=# explain select * from foo where f1->'bar' = 'baz';                               QUERY PLAN
                
 
---------------------------------------------------------------------------Bitmap Heap Scan on foo  (cost=4.21..14.37
rows=7width=32)  Recheck Cond: ((f1 -> 'bar'::text) = 'baz'::text)  ->  Bitmap Index Scan on foo_expr_idx
(cost=0.00..4.21rows=7 width=0)        Index Cond: ((f1 -> 'bar'::text) = 'baz'::text)
 
(4 rows)

regression=# prepare p as select * from foo where f1->$1 = $2;         
PREPARE
regression=# explain execute p('bar', 'baz');                               QUERY PLAN

---------------------------------------------------------------------------Bitmap Heap Scan on foo  (cost=4.21..14.37
rows=7width=32)  Recheck Cond: ((f1 -> 'bar'::text) = 'baz'::text)  ->  Bitmap Index Scan on foo_expr_idx
(cost=0.00..4.21rows=7 width=0)        Index Cond: ((f1 -> 'bar'::text) = 'baz'::text)
 
(4 rows)

As a general rule, when you haven't mentioned the PG version you're using
nor provided an *exact* example of what you're doing, it's difficult to
offer useful help.
        regards, tom lane



pgsql-sql by date:

Previous
From: Steve Midgley
Date:
Subject: Re: posgres optimizer not using the index on hstore HELP
Next
From: Herby Raynaud
Date:
Subject: Wiindow Aggregate function