несколько фильтров в has-child не работают должным образом - PullRequest
0 голосов
/ 13 февраля 2020

У меня есть индекс с возможностью родитель-потомок. Мне удалось вставить несколько фильтров с несколькими сегментами has_child, но это не работает на 100%. Я имею в виду, это дает мне результаты, но не в правильном диапазоне для поля: "gpsSats": {"gte": 17, "lte": 17}. Он также выводит результаты из этого диапазона, несмотря на то, что я включил в свой запрос предложение "must", которое означает AND. Что здесь не так? Любая помощь, пожалуйста?

GET npk/_search
{   "_source": ["CameraNo"],
  "query": {
      "bool": {  
        "must": [
          {
            "range": {
                "CameraNo": {
                  "gte": 1,
                  "lte": 4
                  }
                } 
              },
          {
            "has_child": {
               "type": "body",
                 "query": { 
                   "range": {
                     "gpsSats": {
                       "gte": 17,
                       "lte": 17
                 }
               }
             }
           }
          },
          {
            "has_child": {
               "type": "body",
                 "query": {
                   "range": {
                     "ndvi_1": {
                       "gte": 0.4,
                       "lte": 0.5
                  }
                }
              }
            }
          },
          { 
             "has_child": {
               "type": "body",
                 "query": {
                   "range": {
                     "ndvi_0": {
                       "gte": 0.494,
                       "lte": 0.495
                }
              }
            },
              "inner_hits": {"_source": ["ndvi_0","ndvi_1","gpsSats"]}
          }
        } 
      ]
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...