Re: Why does it not use the index?
От | Stephan Szabo |
---|---|
Тема | Re: Why does it not use the index? |
Дата | |
Msg-id | 20030721105913.R4254-100000@megazone.bigpanda.com обсуждение исходный текст |
Ответ на | Why does it not use the index? (Philip Greer <philip@tildesoftware.com>) |
Ответы |
Re: Why does it not use the index?
|
Список | pgsql-general |
On Mon, 21 Jul 2003, Philip Greer wrote: > dumps=# \d fal_profdel > Table "fal_profdel" > Attribute | Type | Modifier > -----------+--------------------------+---------- > sid | character(4) | not null > card_num | character(19) | not null > date_del | timestamp with time zone | > filename | character varying(30) | > Indices: fal_prfdel_cn, > fal_prfdel_date, > fal_prfdel_pk > > dumps=# \d fal_prfdel_cn > Index "fal_prfdel_cn" > Attribute | Type > -----------+--------------- > card_num | character(19) > unique btree > > dumps=# explain select card_num from fal_profdel where card_num = 'removed_for_privacy'; > NOTICE: QUERY PLAN: > > Seq Scan on fal_profdel (cost=0.00..120546.39 rows=46649 width=12) > > EXPLAIN > ================================================================================ > > Now, why the heck is the select query not using the index? I've tried > it by having an exact 19 character card_num as well - still explains > as a 'Seq Scan' (tablespace scan) - and each query takes up to 37 > seconds (thus confirming that it is indeed doing scans and not using > the index). Have you vacuum analyzed the table recently? What does explain show if you do set enable_seqscan=off; before the explain and then how long does the query actually take to run with seqscan disabled.
В списке pgsql-general по дате отправления: