gpt4 book ai didi

elasticsearch - Elasticsearch中带有匹配短语前缀的“OR”过滤器

转载 作者:行者123 更新时间:2023-12-02 23:02:43 25 4
gpt4 key购买 nike

我想做一个Elasticsearch查询,我想做一个OR过滤器

想象我有这种文件

[ {name : "John Doe"}, {name :"Jane Doe"}, {name:"Steve Doe"} ]

使用此SQL查询执行相同操作的查询
SELECT * from table WHERE name LIKE 'Ja%' OR name LIKE 'Jo%'

现在,我对LIKE使用elasticsearch的match_phrase_prefix,但我对OR还是很困惑。

谢谢

最佳答案

您可以使用bool should查询来实现OR操作。实际上,您可以使用prefix查询代替match_phrase_prefix来描述您的内容。无论如何,如果仍然找到match_phrase_prefix查询的用例,只需将下面请求中的prefix查询替换为match_phrase_prefix查询。

{
"query": {
"bool": {
"should": [
{
"prefix": {
"name": {
"value": "ja"
}
}
},
{
"prefix": {
"name": {
"value": "jo"
}
}
}
]
}
}
}

关于elasticsearch - Elasticsearch中带有匹配短语前缀的“OR”过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30178198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com