Postgresql 仅从postgres tsvector获取1个结果

Postgresql 仅从postgres tsvector获取1个结果,postgresql,Postgresql,我正在使用PostgreSQL 9.3。我已经用一个名为vector的tsvector字段构建了一个数据集 然后我对它执行一个查询 SELECT id, vector, relative_path, title FROM site_server.indexed_url, plainto_tsquery('english','booking') query WHERE vector @@ query; 仅返回1行。当我查看数据时,至少有6行是匹配的。如何让它检索所有匹配的记录 数据样本中向量列中

我正在使用PostgreSQL 9.3。我已经用一个名为vector的tsvector字段构建了一个数据集

然后我对它执行一个查询

SELECT id, vector, relative_path, title
FROM site_server.indexed_url, plainto_tsquery('english','booking') query
WHERE vector @@ query;
仅返回1行。当我查看数据时,至少有6行是匹配的。如何让它检索所有匹配的记录


数据样本中向量列中的值未标准化。在
复制时忽略该项,如

重要的是要理解tsvector类型本身并不 执行任何单词规范化;它假定给出的单词是 针对应用程序进行适当的规范化

如果您运行:

SELECT id, vector, relative_path, title
FROM site_server.indexed_url
WHERE to_tsvector(vector) @@ plainto_tsquery('english','booking') query;

我认为这将产生预期的结果。

请给我们全部六个样本数据rows@VaoTsun我已经包含了一个包含所有数据的CSV文件。您是如何生成
向量
列的?@VaoTsun我刚刚将文本直接插入其中。我想这还不够。我正在使用ORM进行插入,因此可能很难做更多的事情。如果您希望在插入时tsvector没有位置(+-您有什么ATM),可以添加
strip(到“…”)
,或者更好的
到“…”
,以确保插入的是tsvector,而不是看起来相似的文本