Páginas

sexta-feira, 21 de março de 2014

Buscando Frase No Banco de Dados PostgresSQL usando FTS

full-text-search-no-postgresql usando FTS

Bom lembrado uma situação que se deseja fazer uma busca no banco independendo do tipo de palavras o mais comum é usar o like para busca mas será que isso funciona bem? sim funciona, mas tenho uma ferramenta capaz de realiza busca por token =( isso token então temos um monte de palavras solta e vc pode busca a relação entre ela no inicio meio e fim. então vamos lá ver um ex SQL


SELECT * FROM alerta.alt_pass_turno Where to_tsvector('portuguese', abs_aafp) @@ plainto_tsquery('" + search + "')

podemos ver algo de diferente após a condição where.. um to_tsvector mas  o que e isso? segundo o documento do Postgres diz isso: PostgreSQL fornece a to_tsvector função para converter um documento para o tipo de dados tsvector. Bom não fico muito claro não é certo o to_tsvector analisa um documento textual em tokens, reduz os tokens, até lexemas, e retorna um tsvector que lista os lexemas, juntamente com as suas posições no documento. O documento é processado de acordo com a configuração de pesquisa de texto especificado ou padrão.

Resumindo para não mastiga muito plainto_tsquery faz as operações lógicas com a frase separando em palavras para ser buscado no banco de dados













Nenhum comentário:

Postar um comentário