| --- |
| { |
| "title": "ARRAY_REPEAT", |
| "language": "en", |
| "description": "ARRAYREPEAT is used to generate an array of a specified length, where all elements have the given value." |
| } |
| --- |
| |
| ## Function |
| |
| `ARRAY_REPEAT` is used to generate an array of a specified length, where all elements have the given value. |
| |
| ## Syntax |
| |
| ```SQL |
| ARRAY_REPEAT(element, count) |
| ``` |
| |
| ## Parameters |
| |
| - `element`: Any storage type supported in an `ARRAY`. |
| |
| - `count`: Integer type, specifies the length of the returned 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_WITH_CONSTANT`, but the parameter order is reversed. |
| |
| ## Examples |
| |
| 1. Simple example |
| |
| ```SQL |
| SELECT ARRAY_REPEAT('hello', 3); |
| +---------------------------------+ |
| | ARRAY_REPEAT('hello', 3) | |
| +---------------------------------+ |
| | ["hello", "hello", "hello"] | |
| +---------------------------------+ |
| ``` |
| |
| 2. Special cases |
| |
| ```SQL |
| SELECT ARRAY_REPEAT('hello', 0); |
| +---------------------------------+ |
| | ARRAY_REPEAT('hello', 0) | |
| +---------------------------------+ |
| | [] | |
| +---------------------------------+ |
| |
| SELECT ARRAY_REPEAT('hello', NULL); |
| +------------------------------------+ |
| | ARRAY_REPEAT('hello', NULL) | |
| +------------------------------------+ |
| | [] | |
| +------------------------------------+ |
| |
| SELECT ARRAY_REPEAT(NULL, 2); |
| +------------------------------+ |
| | ARRAY_REPEAT(NULL, 2) | |
| +------------------------------+ |
| | [null, null] | |
| +------------------------------+ |
| |
| SELECT ARRAY_REPEAT(NULL, NULL); |
| +---------------------------------+ |
| | ARRAY_REPEAT(NULL, NULL) | |
| +---------------------------------+ |
| | [] | |
| +---------------------------------+ |
| |
| -- Returns error: INVALID_ARGUMENT |
| SELECT ARRAY_REPEAT('hello', -1); |
| ``` |