2015-11-06 2 views
0

Я пытаюсь использовать полнотекстовый поиск какКак использовать to_tsquery (postgres) в PDO?

$STM = $PDO->prepare('SELECT title FROM zz_ad.advs WHERE to_tsvector(title) @@ to_tsquery(:str)'); 
$STM->execute(['str' => 'Hi!']); 
$STM->fetchAll(); 

В результате у меня есть: ОШИБКА: синтаксическая ошибка в tsquery: «Привет!»

Если я попробую без "!" это работает!

ответ

1

Для the documentation:

A tsquery value stores lexemes that are to be searched for, and combines them honoring the Boolean operators & (AND), | (OR), and ! (NOT). Parentheses can be used to enforce grouping of the operators.

'Привет!' не является допустимой лексемой. «Привет».

Смежные вопросы