explode_outertabellvärdesgeneratorfunktion (Databricks SQL)

Returnerar rader genom att ta bort kapsling expr med yttre semantik.

Syntax

explode_outer(expr)

Argument

  • expr: Ett MATRIS- eller MAP-uttryck.

Returer

En uppsättning rader som består av de andra uttrycken i select-listan och antingen elementen i matrisen eller nycklarna och värdena på kartan. Om expr är NULL skapas en enskild rad med NULL:er för matrisen eller kartvärdena.

explode_outer kan bara placeras i den valda listan eller en LATERAL VY. När du placerar funktionen i select-listan får det inte finnas någon annan generatorfunktion i samma select-lista.

Kolumnen som produceras av en matriss kolumn col namnges som standard, men kan ges ett alias. Kolumnerna för en karta kallas som standard key och value . De kan också aliasas med hjälp av en aliastuppeln, till exempel AS (myKey, myValue) .

Exempel

> SELECT explode_outer(array(10, 20)) AS elem, 'Spark';
 10 Spark
 20 Spark
> SELECT explode_outer(map(1, 'a', 2, 'b')) AS (num, val), 'Spark';
 1   a   Spark
 2   b   Spark
> SELECT explode_outer(cast(NULL AS array<int>)), 'Spark';
 NULL   Spark