Bom dia pessoal,
Tenho um sistema web, cuja principal função é buscar em uma tabela com
aproximadamente 2.4 milhões de registros.
Nessa tabela está sendo executado para busca +/- o seguinte SQL:
select nome from nome_produto where nome like upper('%abacaxi%') -- Os dados
da tabela nome_produto
2010/3/8 Jorge Vilela :
> Bom dia pessoal,
> Tenho um sistema web, cuja principal função é buscar em uma tabela com
> aproximadamente 2.4 milhões de registros.
> Nessa tabela está sendo executado para busca +/- o seguinte SQL:
>
>
> select nome from nome_produto where nome like upper('%abacaxi%') -
Oloooco!
Obrigado pela dica do GIN, matou a pau
Fiz um outro campo (produto_tsvector) salvei nele o to_tsvector(produto) e
estou buscando nele.
Advinha? A busca caiu de 1.2 segundos para 32ms
Impressionante!
Vou tentar agora outras combinações...
Lendo sobre o @@ to_tsquery(busca), ví que exist
2010/3/8 Jorge Vilela :
> Lendo sobre o @@ to_tsquery(busca), ví que existem dois tipos de "junção" (&
> e |), existe alguma opção como "| (OU)" mas que ordene os resultados pela
> quantidade de palavras encontradas?
> Por exemplo:
> Busca = Bolo de chocolate
> Trazer na ordem:
> Bolo de chocolate
Muito obrigado Leonardo!
Funcionou melhor do que eu esperava =D
Jorge Vilela
2010/3/8 Leonardo Cezar
> 2010/3/8 Jorge Vilela :
>
> > Lendo sobre o @@ to_tsquery(busca), ví que existem dois tipos de "junção"
> (&
> > e |), existe alguma opção como "| (OU)" mas que ordene os resultados pela
> >
Em 08/03/2010 14:54, Jorge Vilela escreveu:
> Muito obrigado Leonardo!
>
> Funcionou melhor do que eu esperava =D
> Jorge Vilela
>
Diga ae qual foi o tempo da pesquisa agora... hehehehe...
pq parece que a melhora foi muito significativa...
___
pgbr-geral
De 1.2 segundos baixou pra 32ms!
Fora que não importa a ordem dos termos de busca e ainda classifica o
retorno por "relevância".
Impressionante mesmo, muito bom!
Jorge Vilela
2010/3/8 Flávio Alves Granato
> Em 08/03/2010 14:54, Jorge Vilela escreveu:
> > Muito obrigado Leonardo!
> >
> > Func