Skip to main content

ARRAY_WITH_CONSTANT

Function

ARRAY_WITH_CONSTANT is used to generate an array of a specified length, where all elements have the given value.

Syntax

ARRAY_WITH_CONSTANT(count, element)

Parameters

  • count: Integer type, specifies the length of the returned array.

  • element: Any storage type supported in an ARRAY.

Return Value

  • Returns an array of type ARRAY<T>, where T is the type of element.
    • The array contains count copies of the same element.

Usage Notes

  • If count = 0 or NULL, returns an empty array.
  • If element is NULL, all elements in the array are NULL.
  • This function has the same functionality as ARRAY_REPEAT, but the parameter order is reversed.
  • Can be combined with other array functions to construct more complex data.

Examples

  1. Simple example

    SELECT ARRAY_WITH_CONSTANT(3, 'hello');
    +---------------------------------+
    | ARRAY_WITH_CONSTANT(3, 'hello') |
    +---------------------------------+
    | ["hello", "hello", "hello"] |
    +---------------------------------+
  2. Special cases

    SELECT ARRAY_WITH_CONSTANT(0, 'hello');
    +---------------------------------+
    | ARRAY_WITH_CONSTANT(0, 'hello') |
    +---------------------------------+
    | [] |
    +---------------------------------+

    SELECT ARRAY_WITH_CONSTANT(NULL, 'hello');
    +------------------------------------+
    | ARRAY_WITH_CONSTANT(NULL, 'hello') |
    +------------------------------------+
    | [] |
    +------------------------------------+

    SELECT ARRAY_WITH_CONSTANT(2, NULL);
    +------------------------------+
    | ARRAY_WITH_CONSTANT(2, NULL) |
    +------------------------------+
    | [null, null] |
    +------------------------------+

    SELECT ARRAY_WITH_CONSTANT(NULL, NULL);
    +---------------------------------+
    | ARRAY_WITH_CONSTANT(NULL, NULL) |
    +---------------------------------+
    | [] |
    +---------------------------------+

    -- Returns error: INVALID_ARGUMENT
    SELECT ARRAY_WITH_CONSTANT(-1, 'hello');