NEST(2.x)日期直方图聚合,小数区间值

时间:2016-09-15 20:40:52

标签: elasticsearch nest

我正在使用NEST(2.3.3)对象初始化程序语法来创建日期直方图聚合。如何指定Interval的小数值?

DateHistogramAggregation dateHistogram = 
    new DateHistogramAggregation("dateHistogram")
    {
        Field = "TimestampFieldName",   
        Interval = DateInterval.Hour
    }

在上面的数据直方图聚合中,我想指定例如1.5小时。我有办法做到吗?

1 个答案:

答案 0 :(得分:0)

IntervalUnion<DateInterval, Time>,这意味着它可以采用DateInterval枚举值或Time实例。此外,字符串具有对Time实例的隐式转换。将这些放在一起,设置1.5小时的间隔将是

DateHistogramAggregation dateHistogram =
    new DateHistogramAggregation("dateHistogram")
    {
        Field = "TimestampFieldName",
        Interval = new Time("1.5h")
    };

在这种情况下,我们无法利用从stringTime(然后是TimeUnion<DateInterval,Time>)的隐式转换,因为没有隐式转换从字符串到Union<DateInterval, Time>。在这种情况下,我们可以使用Time构造函数并将其传递一个字符串值1.5小时,并将此Time实例分配给该区间。