我想为同一字段查询2个不同的前缀。下面的代码完全按照我在野外工作时的期望工作:
GET /logstash-*/_search
{
"query": {
"match_phrase_prefix" : {
"type" : {
"query" : "job-source"
}
}
}
}
我在文档中找不到如何通过两个查询执行此操作(我发现了如何在多个字段中进行搜索)。我已经尝试了布尔值应该和下面的代码段,但是都没有给我想要的结果。
GET /logstash-*/_search
{
"query": {
"match_phrase_prefix" : {
"type" : {
"query" : ["job-source","job-find"]
}
}
}
}
我如何仅查询具有类型:job-source或type:job-find作为前缀的文档?
先谢谢您
答案 0 :(得分:0)
您可以使用应当组合两个match_phrase_prefix查询,并将minimum_should_match设置为1。
样本查询:
{
"query":
{
"bool":
{
"should": [
{
"match_phrase_prefix":
{
"type": "job-source"
}
},
{
"match_phrase_prefix":
{
"type": "job-find"
}
}],
"minimum_should_match": 1
}
}
}