Существует много объектов следующего типа: отображение:
{
"_index": "crm",
"_type": "order",
"_id": "1",
"_score": 1.0,
"_source": {
"executionPercent": 50,
"phase": [
{
"phaseId": "1",
"phaseName": "phaseOne",
"startDateTime": "2019-11-12T18:09:51.894Z",
"endDateTime": "2019-11-12T21:15:43.797Z"
},
{
"phaseId": "2",
"phaseName": "phaseTwo",
"startDateTime": "2019-11-12T21:15:43.797Z"
}
],
}
},
{
"_index": "crm",
"_type": "order",
"_id": "2",
"_score": 1.0,
"_source": {
"executionPercent": 10,
"phase": [
{
"phaseId": "1",
"phaseName": "phaseOne",
"startDateTime": "2019-11-13T06:37:45.850Z"
}
],
}
}
Мне нужно искать объекты, в которых startDateTime в массиве "phase" (первый элемент) находился между dateFrom и dateTo запрос:
{
"query": {
"filter": {
"script": {
"params": {
"dateFrom": 2019-11-11
"dateTo": 2019-11-12
},
"script": "doc['startDateTime'][0].value > dateFrom && doc['startDateTime'][0].value < dateTo"
}
}
}
}
Может быть, использовать «lang»: «безболезненно»? извините за мой английский sh и код