Могу ли я указать, чтобы сопоставлять только векторы, в которых есть одно слово, используя tsvectors? - PullRequest
1 голос
/ 19 апреля 2019

Я хочу искать слова в цветекторе, только если они являются единственными словами в тексте.Есть способ сделать это?как насчет указания, что слово должно быть последним или первым словом?Причина, по которой я использую tsvector, заключается в том, что мне нужно сопоставить слова с основами.

ОБНОВЛЕНИЕ: Пример данных будет таблица, которая содержит три строки, такие как:

  id      |      text       |    ts_vector
---------------------------------------------
  1       |    eating       | -- this column holds vector data
          |                 |
  2       |    eating food  |
          |                 |
  3       |    eats         |

Я хочу иметь возможность искать слово eat и возвращать только слово с id = 1 и id = 3, но id 2 следует игнорировать.Запрос будет выглядеть примерно так:

to_tsquery('english', 'eat') @@ tablename.ts_vector

, за исключением того, что в этом примере возвращаются все три строки, как вы знаете

Спасибо!

1 Ответ

0 голосов
/ 19 апреля 2019

Попробуйте это.

SELECT * FROM TABLE1 WHERE SUBSTRING(TEXT FROM 1 FOR 3)= 'EAT';
...