Рассмотрим 2 документа в индексе, как, как показано ниже:Упругие Поисковый запрос диапазон
{
"_index": "32",
"_type": "places",
"_id": "_FqlAzzSRN6Ge_294D5Mwg",
"_score": 1,
"_source": {
"name_3": "xxxx",
"id_3": "xxxxx",
"name_2": "xxxx",
"id_2": "xxx",
"name_1": "xxx",
"id_1": "xxx",
"tempid": "xxxxx",
"field1": 316.6666666666667,
"type": "processeddata"
}
},
{
"_index": "32",
"_type": "places",
"_id": "3RCO-zHeSr2nWFZd8W-MDg",
"_score": 1,
"_source": {
"name_3": "yyyy",
"id_3": "yyy",
"name_2": "yyy",
"id_2": "yyy",
"name_1": "yyyy",
"id_1": "yyy",
"tempid": "yy",
"field2": 400.6666666666667,
"type": "processeddata"
}
}
Я хочу построить запрос для следующего сценария. Я должен найти документы для поля в определенном диапазоне.
Поле1: 200-400 Поле2: 300-400, поэтому должны быть указаны вышеприведенные 2 документа.
Мой запрос выглядит следующим образом:
"query": {
"bool": {
"must": [
{
"range": {
"field1": {
"gte": 200,
"lte": 400
}
},"range": {
"field2": {
"gte": 300,
"lte": 400
}
}
}
]
}
}
Но выше запрос «выглядит для 2-х полей в опалить документе, так что результат не приходит, так что я должен сделать, чтобы найти, если какой-либо из поданных удовлетворяет. диапазон в документе должен вернуться Пожалуйста, поделитесь своими идеями заранее спасибо