From: | Brian McCane <bmccane(at)mccons(dot)net> |
---|---|
To: | Dave Menendez <dave(at)sycamorehq(dot)com> |
Cc: | <pgsql-admin(at)postgresql(dot)org> |
Subject: | Re: Query planner quirk? |
Date: | 2002-04-16 01:38:01 |
Message-ID: | 20020415203649.O25289-100000@fw.mccons.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Implicitely use the index.
explain SELECT d.bank_id, d.time_id, d.item_name, d.item_value FROM
mbz_rpt_item_val d WHERE d.bank_id IN (277,535,739,1234,1330) and d.time_id
IN ('P_6') and d.org_allow = 1 ORDER BY time_id,org_allow,bank_id ;
Actually, just the time_id might be enough, depending on if any other
indexes are out there.
- brian
On Sat, 13 Apr 2002, Dave Menendez wrote:
>
> I have a 2 million+ table, mbz_rpt_item_val:
>
> bank_id (integer)
> item_name (character(16))
> org_allow (integer)
> time_id (character(10))
> item_value(character varying(12))
>
> and an index test_idx2:
>
> time_id
> org_allow
> bank_id
>
>
> The query planner seems to choose a very dumb method when I tell it to
> explain the following query:
>
> explain SELECT d.bank_id, d.time_id, d.item_name, d.item_value FROM
> mbz_rpt_item_val d WHERE d.bank_id IN (277,535,739,1234,1330) and d.time_id
> IN ('P_6') and d.org_allow = 1;
>
> Seq Scan on mbz_rpt_item_val d (cost=0.00..81988.51 rows=36 width=45)
>
> This query takes about 20 seconds. However, if I explicitly tell it not do
> do sequential scans (SET ENABLE_SEQSCAN TO OFF), and explain it again, it
> reluctantly decides to use the index even though it thinks the cost is
> higher, but the query comes back in 2 seconds. I turn the sequential scan
> back on, and it goes back to doing a sequential scan, taking 20 seconds.
>
> When I do the exact same query with a very large list of bank_id's (maybe
> 500 or so), THEN it decides on its own to use the index, returning in about
> 18 seconds, which is great.
>
> Any comments? I'm using postgres 7.2 and did a full vacuum analyze before
> trying this.
>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/users-lounge/docs/faq.html
>
Wm. Brian McCane | Life is full of doors that won't open
Search http://recall.maxbaud.net/ | when you knock, equally spaced amid those
Usenet http://freenews.maxbaud.net/ | that open when you don't want them to.
Auction http://www.sellit-here.com/ | - Roger Zelazny "Blood of Amber"
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2002-04-16 02:10:43 | Re: psql command line history not working |
Previous Message | Dan MacNeil | 2002-04-16 01:05:49 | Re: psql command line history not working |