Sdílet prostřednictvím


Funkce array_insert

Platí pro:označeno zaškrtnutím ano Databricks SQL označeno zaškrtnutím ano Databricks Runtime 13.3 LTS a vyšší

Vrátí rozbalené array, kde je elem vloženo na pozici index.

Syntaxe

array_insert(array, index, elem)

Argumenty

  • array: Pole.
  • index: Nenulový výraz INTEGER určující, kam se má vložit elem. Pokud je index záporný, elem se vloží vzhledem ke konci pole.
  • elem: Výraz stejného typu jako prvky array.

Návraty

POLE stejného typu jako array.

Poznámky

Všechny prvky začínající na index jsou posunuty o jednu pozici, aby udělaly místo pro elem na index. Pokud je index mimo kardinalitu pole array, je pole vyplněno hodnotami NULL.

Příklady

> SELECT array_insert(array('a', 'b', 'c'), 1, 'z');
 ["z","a","b","c"]

> SELECT array_insert(array('a', 'b', 'c'), 0, 'z');
 Error

> SELECT array_insert(array('a', 'b', 'c'), -1, 'z');
 ["a","b","c","z"]

> SELECT array_insert(array('a', 'b', 'c'), 5, 'z');
 ["a","b","c",NULL,"z"]

> SELECT array_insert(array('a', 'b', 'c'), -5, 'z');
 ["z",NULL,"a","b","c"]

> SELECT array_insert(array('a', 'b', 'c'), 2, cast(NULL AS STRING));
 ["a",NULL,"b","c"]