Index will not be used if your string has "wild card" (%) in the beginning. It should be used, if you change your query to: select * from tb_gen_person where pes_name like 'albert%';
Igor -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alexander B. Sent: Wednesday, July 25, 2007 9:18 AM To: pgsql-admin@postgresql.org Subject: [ADMIN] Searching in a string with index Hi, When I search some words into a varchar column and this column has an index. Does Postgres use index?? The search is done this way: create table tb_gen_person ( pes_nro_doc numeric(14) not null, pes_name varchar(150) not null, constraint pk_person PRIMARY KEY(pes_nro_doc) ); create index ix_person_01 on tb_gen_person (pes_name); select * from tb_gen_person where pes_name like '%albert%'; Not considering upper case, or tsearch2, this type of search use index somehow? I overhear that if the search has more than 5 characters, probably would use index!! Is this true? Thanks ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org