mateusgra escreveu:
> E se eu quiser pesquisar que comece com Euler e termine com oliveira.
> Indice com _pattern_ops so aceita pesquisa no inicio do campo.
A documentação é o seu melhor amigo. Você testou o que mandei? É claro que ele
usa o índice; só não vai utilizar se você fizer uma pesquisa com sufixo.

euler=# select * from bar where a ~ '^euler.*oliveira';
             a
---------------------------
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
 euler taveira de oliveira
(10 rows)

euler=# explain analyze select * from bar where a ~ '^euler.*oliveira';
                                                     QUERY PLAN

---------------------------------------------------------------------------------------------------------------------
 Bitmap Heap Scan on bar  (cost=4.35..25.17 rows=10 width=13) (actual
time=0.123..0.448 rows=10.00 loops=1.00)
   Filter: (a ~ '^euler.*oliveira'::text)
   ->  Bitmap Index Scan on bari  (cost=0.00..4.35 rows=10 width=0) (actual
time=0.054..0.054 rows=10.00 loops=1.00)
         Index Cond: ((a ~>=~ 'euler'::text) AND (a ~<~ 'eules'::text))
 Total runtime: 0.562 ms
(5 rows)

> E indice gist não aceita indice composto.
> 
Quem falou em índice GiST? É um B-Tree mesmo.

> Não consegui resolver esse problema ?
> 
Faltou ler as referências que enviei. :( Se você não conhece o poder das
funcionalidades do PostgreSQL fica difícil você saber se algo se encaixa na
sua solução.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a