ARRAY_WITH_CONSTANT is used to generate an array of a specified length, where all elements have the given value.
ARRAY_WITH_CONSTANT(count, element)
count: Integer type, specifies the length of the returned array.
element: Any storage type supported in an ARRAY.
ARRAY<T>, where T is the type of element.count copies of the same element.count = 0 or NULL, returns an empty array.element is NULL, all elements in the array are NULL.ARRAY_REPEAT, but the parameter order is reversed.Simple example
SELECT ARRAY_WITH_CONSTANT(3, 'hello'); +---------------------------------+ | ARRAY_WITH_CONSTANT(3, 'hello') | +---------------------------------+ | ["hello", "hello", "hello"] | +---------------------------------+
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');