Я ищу события в ElasticSearch. Каждое событие может иметь заданную дату начала (в секундах) или событие будет продолжаться до тех пор, пока оно не будет отменено вручную. В моем поисковом запросе я ищу (среди прочих параметров), с сегодняшним днем и хотел бы найти все события, которые:Elasticsearch поиск событий с несколькими типами дат
- старт сегодня (дата> сегодня и dateType = удельное)
- ИЛИ находятся на постоянной основе (dateType = о текущих)
Мой запрос выглядит, но это не работает:
"query":{
"bool":{
"must":[
{
"range":{
"latitude":{
"gte":45.78560033657945,
"lte":46.54954406342055
}
}
},
{
"range":{
"longitude":{
"gte":13.75487411320551,
"lte":14.857968686794491
}
}
},
{
"multi_match":{
"query":"tes",
"type":"phrase_prefix",
"fields":[
"title^3",
"subtitle^2"
]
}
}
],
"should":[
{
"range":{
"validDateUnix":{
"gte":1487026800000
}
}
}
]
}
}
Любая помощь будет оценена.
Спасибо за ваш ответ, но это не похоже на работу. Результат содержит прошлые события. Поэтому фильтр диапазона позволяет им каким-то образом пробиться. – Leon
Первая часть теперь работает правильно, и я могу фильтровать только новые события, но текущие не включены. – Leon
Можете ли вы показать образец документа, который должен соответствовать текущему ограничению? – Val