blob: 25c21daafa22a604dbd8ad706a5533ea14a05743 [file] [log] [blame] [view]
---
{
"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);
```