gpt4 book ai didi

elasticsearch - ElasticSearch 2.4日期范围直方图,使用两个日期字段之间的差异

转载 作者:行者123 更新时间:2023-12-03 00:11:12 26 4
gpt4 key购买 nike

对于此处或在文档中的问题,我无法在ES 2. *上找到与此相关的任何内容,如果这是重复的,那么抱歉。

我想做的是在ElasticSearch查询中创建一个聚合,这将允许我基于两个日期字段之间的记录差异创建存储桶。

即如果我在商店的ES中有数据,则我可能希望查看purchase_date字段和shipped_date字段之间的时差。

因此,在那种情况下,我想创建一个带有存储桶的聚合,以便在shipped_date-Purchase_date <1天,1-2天,3-4天或5天以上时提供匹配。

理想情况下,我希望在ES查询中可以做到这一点。是这种情况还是最好的方法是根据每次匹配的时间差将结果处理到我自己的数组中?

最佳答案

我能够通过使用内置的表达语言来实现此目的,该语言默认在ES 2.4中启用。我想要的功能是将结果分组,以15天为增量显示EndDate和“已处理日期”之间的差异。查询的相关部分是:

{
...,
"aggs": {
"reason": {
"date_histogram": {
"min_doc_count": 1,
"interval": "1296000000ms", // 15 days
"format": "epoch_millis",
"script": {
"lang": "expression",
"inline": "doc['DateProcessed'] > doc['EndDate'] ? doc['DateProcessed'] - doc['EndDate'] : -1"
}
}
...
}
}

关于elasticsearch - ElasticSearch 2.4日期范围直方图,使用两个日期字段之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40636560/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com