AggregateRange 函数对 start 和 end DATETIME 参数指定的时间范围的每个元素生成聚集。
AggregateRange(agg_express lvarchar, ts TimeSeries flags integer default 0 start datetime year to fraction(5) default NULL, end datetime year to fraction(5) default NULL ) returns row;
不能将 flags 参数值 1 用于此函数。
AggegateRange 函数将时间系列的输入部分转换为一行聚集值。agg_express 表达式对指定为 $colname 或 $colnumber 的输入时间系列的列执行运算:例如,$high 或 $1。
如果 MIN、MAX、MEDIAN、SUM 或 AVG 表达式用于非数字列,那么将出现错误。
使用以下语法,Nth 表达式将返回指定聚集时间段的列的值:
Nth($col, n)
如果聚集时间段的第 n 行没有值,那么 Nth 函数将针对该时间段返回空值。使用 n 参数的正值执行 Nth 函数比使用负值效率更高。
聚集时间段由时间段的开始日期和时间表示。
flags 参数确定在聚集期间如何处理日历休息时间段中的数据点,以及如何管理隐藏的元素。该参数可以具有以下值。
单个元素(行)。
create row type elemval (tstamp datetime year to fraction(5), high double precision); select AggregateRange('avg($high)', stock_data)::elemval from daily_stocks;