提供了一种数据类型
tsvector
用于存储预处理的文档,以及用于表示已处理查询的类型 tsquery
但有时 TSVECTOR 是一个单词数组,有时是一袋单词位置,有时是一个带有位置和权重的复杂向量……我可以访问其数据结构的各个部分吗?例子:
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 文档,其中包含对其真实和完整内部结构的技术描述。