Перейти к содержимому
Последнее обновление

ARRAY_REPEAT

Функция​

ARRAY_REPEAT используется для создания массива заданной длины, все элементы которого имеют указанное значение.

Синтаксис​

ARRAY_REPEAT(element, count)

Параметры​

  • element: Любой тип данных, поддерживаемый в ARRAY.

  • count: Целочисленный тип, задаёт длину возвращаемого массива.

Возвращаемое значение​

  • Возвращает массив типа ARRAY<T>, где T обозначает тип element.
    • Массив содержит count копий одного и того же element.

Примечания по использованию​

  • При count = 0 или NULL возвращается пустой массив.
  • Если element имеет значение NULL, все элементы массива равны NULL.
  • Эта функция выполняет ту же задачу, что и ARRAY_WITH_CONSTANT, но порядок параметров обратный.

Примеры​

  1. Простой пример

    SELECT ARRAY_REPEAT('hello', 3);
    +---------------------------------+
    | ARRAY_REPEAT('hello', 3) |
    +---------------------------------+
    | ["hello", "hello", "hello"] |
    +---------------------------------+
  2. Особые случаи

    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);