Thread: index is not using?

index is not using?

From
AI Rumman
Date:
I have created a index
create index leadaddress_phone_idx on  leadaddress(regexp_replace((phone)::text, '[^0-9]*'::text, ''::text, 'g'::text));
 
But the index is not using.
 
explain select * from leadaddress where regexp_replace(phone,'[^0-9]*','','g') like '%2159438606';
                                               QUERY PLAN                                              
--------------------------------------------------------------------------------------------------------
 Seq Scan on leadaddress  (cost=100000000.00..100009699.81 rows=1 width=97)
   Filter: (regexp_replace((phone)::text, '[^0-9]*'::text, ''::text, 'g'::text) ~~ '%2159438606'::text)
 
Could anyone please tell me why? I analyzed the table after index creation.

Re: index is not using?

From
Scott Marlowe
Date:
On Tue, Feb 9, 2010 at 12:55 AM, AI Rumman <rummandba@gmail.com> wrote:
> I have created a index
> create index leadaddress_phone_idx on
> leadaddress(regexp_replace((phone)::text, '[^0-9]*'::text, ''::text,
> 'g'::text));
>
> But the index is not using.

like '%yada'

isn't capable of using an index.  If it's left anchored:

like 'yada%'

it can.