выберите диапазон времени, используя два поля - PullRequest
0 голосов
/ 27 марта 2019

Диапазон времени определяется с помощью start_date и end_date, и я пытаюсь получить все документы, в которых указанная дата, в данном случае 03/27/2019, находится внутри диапазона времени.

GET users/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "range": {
            "start_date": {
              "lte": "03/27/2019"
            }
          }
        },
        {
          "range": {
            "end_date": {
              "gte": "03/27/2019"
            }
          }
        },
        {
          "terms": {
            "locations": [
              "all"
            ]
          }
        }
      ],
      "must_not": [
        {
          "match": {
            "gender": "male"
          }
        }
      ]
    }
  }
}

Запрос не дает надлежащих документов, например, документ со следующими значениями:

  "start_date": "11/25/2018"
  "end_date": "12/25/2019"

Не возвращается

Отображение полей:

"start_date": {
            "type": "date",
            "format": "MM/DD/yyyy"
          },
"end_date": {
            "type": "date",
            "format": "MM/DD/yyyy"
          },

1 Ответ

1 голос
/ 27 марта 2019

Я думаю, что у вас неправильный формат даты.

Это должно быть MM/dd/yyyy вместо MM/DD/yyyy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...