У нас есть события, которые имеют startTime
и endTime
, и мы хотим вернуть любое событие, когда время перекрывается.
----|-------|------
id start end
----|-------|------
1 01:03 02:05
----|-------|------
2 01:00 01:12
Кажется довольно простым, оба вышеперечисленных события перекрываются во времени.
Я пытался использовать запрос range
, чтобы найти перекрывающиеся времена
{
"range":
{
"eventStart": {
"gte": start,
"lte": ednd
}
}
},
{
"range":
{
"eventEnd": {
"gte": start,
"lte": end
}
}
}
Поиск по времени начала и окончания с идентификатором 1, это не работает, потому что начало2 перед началом 1.
Я искал пересечение period
, но не совсем уверен, правильный ли это подход.