Re: Query Plan - Index Scan & Seq Scan - Mailing list pgsql-admin

From Prasanth
Subject Re: Query Plan - Index Scan & Seq Scan
Date
Msg-id 42838144.8000008@nqadmin.com
Whole thread Raw
In response to Re: Query Plan - Index Scan & Seq Scan  (Scott Marlowe <smarlowe@g2switchworks.com>)
List pgsql-admin
EXPLAIN ANALYZE (SELECT id FROM a,b WHERE a.id = b.id AND code >2 AND
b.account_id = 16221);

    QUERY PLAN

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Merge Join  (cost=141372.58..141462.28 rows=1 width=8) (actual
time=726.172..726.172 rows=0 loops=1)
   Merge Cond: ("outer".id = "inner".id)
   ->  Index Scan using id_idx on b  (cost=0.00..14415.96 rows=171 width=4)
(actual time=726.168..726.168 rows=0 loops=1)
         Filter: (account_id = 16221)
   ->  Sort  (cost=141372.58..141375.27 rows=1076 width=12) (never executed)
         Sort Key: a.id
         ->  Seq Scan on a  (cost=0.00..141318.40 rows=1076 width=12) (never
executed)
               Filter: (code > 2)
 Total runtime: 726.253 ms
(9 rows)

Thanks,
-Prasanth.

Scott Marlowe wrote:
> On Thu, 2005-05-12 at 10:51, Prasanth wrote:
>
>>I agree with you.
>>
>>But I have the where conditions on the tables I was expecting the planner to
>>user index scan but it went for seq scan.
>>
>>I did a little testing using what you said.
>>
>>Below are the results.
>>
>>SELECT a.id FROM a,b WHERE a.id = b.id AND a.code >2 AND b.account_id = 16221;
>>
>>Total runtime: 18194.936 ms
>>
>>Then I set the seqscan off and ran the same query.
>>
>>Total runtime: 27.554 ms
>
>
> Good!  This tells us two things, 1:  Your database can use the indexes
> (sometimes indexes can't be used for various reasons, which are quickly
> disappearing by the way.) and 2:  Your database is making the wrong
> choice about when to use a seq scan versus an index.
>
> What does the explain analyze output from that query say about row
> estimates versus actual rows returned?
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>
>

pgsql-admin by date:

Previous
From: Tom Lane
Date:
Subject: Re: Query Plan - Index Scan & Seq Scan
Next
From: Prasanth
Date:
Subject: Re: Query Plan - Index Scan & Seq Scan