在elasticsearch

时间:2017-03-09 10:07:00

标签: database elasticsearch date-range

我对弹性搜索很新,我对它提供的所有功能印象深刻。现在我有一个特例,我不确定elasticsearch是否能够处理它。

总的来说,我在日期范围内搜索一个类型。 但此外我还需要在此日期范围之前和之后的第一个日期。 我不知道这些日期离我们有多远,所以我不能在日期范围内添加特定的天数。

我知道这可以通过3个不同的查询来实现,但是在一个查询中也可以吗?

有什么想法吗?

编辑(示例):

[uuid1] = [
    ['id' => 1, 'date' => '1970/01/01 12:00:00', 'val' => 'ages ago'],
    ['id' => 2, 'date' => '2010/01/01 12:00:00', 'val' => 'randomValueSomewhereInThePast'],
    ['id' => 3, 'date' => '2017/01/03 12:00:00', 'val' => 'valueInTimeRange3'],
    ['id' => 4, 'date' => '2017/01/04 12:00:00', 'val' => 'valueInTimeRange4'],
    ['id' => 5, 'date' => '2017/01/05 12:00:00', 'val' => 'valueInTimeRange5'],
    ['id' => 6, 'date' => '2017/01/06 12:00:00', 'val' => 'valueInTimeRange6'],
    ['id' => 7, 'date' => '2020/01/05 12:00:00', 'val' => 'randomValueSomewhereInTheFuture']
    ['id' => 8, 'date' => '9999/01/05 12:00:00', 'val' => 'wayTooFarAway']
]

如你所见,我有几个约会。现在我有一个来自

的给定DateRange
2017/01/03 12:00:00 to 2017/01/06 12:00:00

所以带范围的简单请求会返回值3,4,5,6。 但我需要价值观2& 7还有。 这些是我的范围之前和之后的日期。我不知道他们什么时候这样,我不能只调整响了。

0 个答案:

没有答案