使用plainto_tsquery处理'what'返回空结果的原因排查
plainto_tsquery返回空结果的原因
- 停用词被过滤:
plainto_tsquery会根据指定的文本配置(此处为english)对输入文本做分词和停用词清理。'what'属于英文内置停用词,会被直接剔除,因此返回空的tsquery。 - 验证方法:执行以下SQL语句查看英文配置的停用词列表,能找到'what':
SELECT unnest(ts_get_config('english', 'stopwords')); - 解决方案参考:如果需要保留这类词汇参与查询,可改用
phraseto_tsquery;也可以自定义停用词列表替换默认的英文停用词配置。
内容的提问来源于stack exchange,提问作者TomazicM
相关产品推荐
相关产品推荐

