gil*_*ly3 5 postgresql full-text-search
我正在postgresql中实现一个简单的搜索,用于检索网页上的预先输出结果.所以,我需要使用start-with匹配的最后一个参数,因为用户可能没有完成输入单词.当我构建我的时候tsquery
,我正在添加:*
到最后一个参数.这是一个示例查询:
SELECT id, key, name
FROM principal,
to_tsvector(key || ' ' || name) vector,
to_tsquery('investig:*') query
WHERE vector @@ query
ORDER BY ts_rank(vector, query) DESC
Run Code Online (Sandbox Code Playgroud)
在输入单词"investig"时,我会收到以下行为:
Input | Result Count ========================== i | 0 in | 0 inv | 8 inve | 8 inves | 8 invest | 8 investi | 7 investig | 7 investiga | 0 investigat | 0 investigate | 7
这比我省略的要好:*
,但不够好.investiga
当investigate
返回7结果时,为什么我得到0 结果?有没有更好的方法来构建我的查询,以确保我得到以搜索词开头的所有内容?
归档时间: |
|
查看次数: |
322 次 |
最近记录: |