【发布时间】:2020-10-05 01:13:08
【问题描述】:
我目前正在使用 websearch_to_tsquery 函数在 PostgreSQL 中进行全文搜索。除了我似乎不再能够进行部分匹配之外,这一切都很好。
SELECT ts_headline('english', q.\"Content\", websearch_to_tsquery('english', {request.Text}), 'MaxFragments=3,MaxWords=25,MinWords=2') Highlight, *
FROM (
SELECT ts_rank_cd(f.\"SearchVector\", websearch_to_tsquery('english', {request.Text})) AS Rank, *
FROM public.\"FileExtracts\" f, websearch_to_tsquery('english', {request.Text}) as tsq
WHERE f.\"SearchVector\" @@ tsq
ORDER BY rank DESC
) q
搜索 customer 有效,但 cust* 和 cust:* 无效。
我浏览了文档和许多文章,但找不到很多相关信息。我以前没有使用过它,所以希望这只是我做错了一些简单的事情?
【问题讨论】:
-
我正在寻找相同的解决方案。这里有什么新结果吗?
-
@Kostanos 我最终只使用了 Elasticsearch,但很想知道是否有使用 PostgreSQL 的干净方法。
标签: postgresql full-text-search