BC1*_*554 7 elasticsearch match-phrase
我正在使用 ElasticSearch,我正在尝试实现 match_phrase/string + 模糊性,但似乎这是不可能的(网上没有那么多例子,文档中没有这样的情况)。
我需要什么:短语/字符串匹配+模糊+基于字段的每个值的倾斜。
到目前为止我已经尝试过的(而且我仍然没有我需要的解决方案):
query_string - 它包含模糊性和倾斜度。但是,它通过一个文档的所有字段值收集一个字符串。
match_phrase - 它包含了slop,但没有模糊性。好处是 - 它至少在字段的一个值中查找短语匹配,而不是通过文档字段的所有值收集字符串。
我需要的:
有人有 ElasticSearch 上的短语匹配(包括模糊性)方面的经验吗?
提前致谢。
正如我在问题评论部分的链接中提到的,您可以使用跨度查询。
您进一步寻找的是一种使用跨度查询来控制模糊性的方法。我从这个SOF 答案中获取了一个例子,并根据您想要管理模糊性的情况重写了查询。
POST <your_index_name>
{
"query":{
"bool":{
"must":[
{
"span_near":{
"clauses":[
{
"span_multi":{
"match":{
"fuzzy":{
"name":{
"value":"champions",
"fuzziness":2
}
}
}
}
},
{
"span_multi":{
"match":{
"fuzzy":{
"name":{
"value":"league",
"fuzziness":2
}
}
}
}
}
],
"slop":0,
"in_order":false
}
}
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
5231 次 |
| 最近记录: |