В базе данных postgres у нас есть таблица table1 и столбец столбца1, тип которого является текстом. И мы создали индекс для этого столбца CREATE INDEX idx_column1 ON table1 ИСПОЛЬЗОВАНИЕ gin (to_tsvector ('english', column1);postgresql полнотекстовый поиск функции синтаксиса
вопрос, почему, когда мы запустим этот запрос используется
SELECT *
FROM table1
where to_tsvector('english', column1) @@ to_tsquery('searchedText')
индекс, но по этому показателю запроса не используется
SELECT *
FROM table1
where ts_match_vq(to_tsvector('english', column1),to_tsquery('searchedText'))
'ts_match_vq (to_tsvector ('english', column1) @@ to_tsquery ('searchText'))' Это не работает для меня. Функция определяется как ожидающая ts_vector и ts_query. В вашем примере вы передаете логическое значение, мой 9.1 жалуется на это. – DrColossos
Извините, исправленный вопрос. Вместо ** ts_match_vq (to_tsvector ('english', column1) @@ to_tsquery ('searchText')) ** Мне нужно узнать о ** to_tsvector ('english', column1) @@ to_tsquery ('searchText') ** – zhmaksat