我正在使用PostgreSQL 9.3。我用一个叫做vector的tsvector字段构建了一个数据集。
然后我对它执行一个查询

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

只返回一行。当我查看数据时,至少有6行匹配。如何让它检索所有匹配的记录?
Data file

最佳答案

数据示例中向量列中的值未规范化。在COPY时忽略,根据docs:
必须了解tsvector类型本身并不
执行任何单词规范化;它假定给定的单词是
为应用程序适当规范化
如果你跑步:

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

我想这会产生预期的结果。

关于postgresql - 从postgres tsvector仅获得1个结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42641071/

10-12 13:03