ARRAY_REPEAT

返回将指定元素重复指定次数后的ARRAY数组。

命令格式

array<T> array_repeat(T <element>, int <count>)

命令说明

返回将元素t重复count次后新生成的ARRAY数组。

参数说明

  • t:必填。待重复的元素。支持的类型如下:

    • TINYINT、SMALLINT、INT、BIGINT

    • FLOAT、DOUBLE

    • BOOLEAN

    • DECIMAL、DECIMALVAL

    • DATE、DATETIME、TIMESTAMP、IntervalDayTime、IntervalYearMonth

    • STRING、BINARY、VARCHAR、CHAR

    • ARRAY、STRUCT、MAP

  • count:必填。重复的次数,INT类型。必须大于等于0。

返回值说明

返回ARRAY类型。返回规则如下:

  • 如果count为NULL,返回NULL。

  • 如果count小于0,返回空数组。

使用示例

  • 示例1:将123重复2次,生成新的ARRAY数组。命令示例如下。

    --返回[123, 123]。
    select array_repeat('123', 2);
  • 示例2:count为NULL。命令示例如下。

    --返回NULL。
    select array_repeat('123', null);
  • 示例3:count小于0。命令示例如下。

    --返回[]。
    select array_repeat('123', -1);

相关函数

ARRAY_REPEAT函数属于复杂类型函数,更多对复杂类型数据(例如ARRAY、MAP、STRUCT、JSON数据)的处理函数请参见复杂类型函数