如何解决Elasticsearch / Elasticpress查找所有术语
我一直在努力使搜索工作按预期进行,主要是因为我不知道应该执行哪种查询来满足我的需求。
本质上,我正在寻找的是,理想情况下,结果理想的情况是只包含包含每个术语的帖子,而且还要保持模糊性。
例如,如果我寻找术语“ 215轮胎”,它将带来如下结果:
- 215个轮胎
- 217个轮胎
- 225个轮胎
- 215轮胎
- ...
我正在创建一个应用程序,并且已经学习了很多东西,Elasticsearch只是其中的一部分,但它非常庞大。我已经进行了一些测试,但看起来好像缺少一些东西。
根据我的理解,我希望类似以下查询的内容能够正常工作:
$query = array(
'bool' => array(
'should' => array(
array(
'multi_match' => array(
'query' => '','fields' => $search_fields,'boost' => apply_filters( 'ep_match_boost',2,$search_fields,$args ),'fuzziness' => 1,'operator' => 'and',),);
显然我做错了,因为我没有得到期望的结果,例如,如果我搜索“ 215轮胎”,我也得到了单独的“ 215” 的结果,而没有提及“轮胎”一词。
我通过最著名的试错法进行了很多实验,但没有结果。有帮助吗?
解决方法
我对ES
来说还比较陌生,但是从您的询问看来,您可能想看看terms
,但是terms不能与text
{{ 1}},因为如果您想要一个更强大的解决方案,那么分析人员有时可以更改单词,然后看看datatypes
,here是一个提出的问题,我认为它可能可以解决您的问题。 / p>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。