Тип данных tsvector
предназначен для хранения предварительно обработанных документов, а также тип tsquery для представления обработанных запросов
Но иногда TSVECTOR представляет собой массив слов, иногда мешок с word-position, иногда сложный вектор с позициями и весами ... Могу ли я получить доступ к отдельным частям его структуры данных? Пример:
CREATE TABLE t ( tsv TSVECTOR );
INSERT INTO t VALUES
('foo phrase'::TSVECTOR),
('second foo phrase'::TSVECTOR),
('third foo phrase'::TSVECTOR);
SELECT tsv FROM t WHERE "'foo' is the first word" -- how to do it??
Представляя, что TSVECTOR имеет те же операторы доступа к структуре JSONb: мы можем получить доступ к его структуре с помощью WHERE tsv->'foo'->0=1
.
В реальной жизни: я не вижу ( здесь в справочнике по поиску ) tsquery или прямой оператор, который это делает. И я не вижу ( здесь, в Общем руководстве ) полная документация TSVECTOR с техническим описанием его реальной и полной внутренней структуры .