sequence

sequence

sequence 介绍

sequence(start, stop, step) - 生成一个从startstop(包括stop)的元素数组,每次递增step。返回元素的类型与参数表达式的类型相同。

支持的类型有:byte、short、integer、long、date、timestamp。

startstop表达式必须解析为相同类型。如果startstop表达式解析为'date'或'timestamp'类型,则step表达式必须解析为'interval'或'year-month interval'或'day-time interval'类型,否则与startstop表达式类型相同。

参数:

  • start - 一个表达式。范围的起始点。
  • stop - 一个表达式。范围的结束点(包括)。
  • step - 一个可选表达式。范围的步长。如果start小于或等于stop,默认步长为1;否则为-1。对于时间序列,分别是1天和-1天。如果start大于stop,则步长必须是负数,反之亦然。

Examples:

> SELECT sequence(1, 5);
 [1,2,3,4,5]
> SELECT sequence(5, 1);
 [5,4,3,2,1]
> SELECT sequence(to_date('2018-01-01'), to_date('2018-03-01'), interval 1 month);
 [2018-01-01,2018-02-01,2018-03-01]
> SELECT sequence(to_date('2018-01-01'), to_date('2018-03-01'), interval '0-1' year to month);
 [2018-01-01,2018-02-01,2018-03-01]

Since: 2.4.0