PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

PSQLException:ERRO:erro de sintaxe em tsquery


Use aspas em torno de seus termos se você os quiser como frases/literais ou se eles contiverem caracteres usados ​​na sintaxe:
select to_tsquery('"hello there" | hi');

Tenha em mente que você realmente não deve ter caracteres malucos em seus termos, já que eles não vão corresponder a nada no tsvector.

Os caracteres (não token) reconhecidos pelo analisador tsquery são:\0 (nulo), ( , ) , (espaço em branco), | , & , : , * e ! . Mas como você tokeniza sua consulta deve ser baseado em como você configurou seu dicionário. Existem muitos outros caracteres que você provavelmente não desejará em sua consulta, não porque causarão um erro de sintaxe, mas porque significa que você não está tokenizando sua consulta corretamente.

Use o plainto_tsquery versão se for um simples AND consulta e você não quer lidar com a criação da consulta manualmente.