explode_outer fonction de générateur table

Retourne des lignes en annulant expr l’imbrication à l’aide de la sémantique externe.

Syntaxe

explode_outer(expr)

Arguments

  • expr: Une expression de tableau ou de mappage.

Retours

Ensemble de lignes composées d’autres expressions dans la liste de sélection et des éléments du tableau ou des clés et valeurs de la classe Map. Si expr est null, une seule ligne avec des valeurs NULL pour le tableau ou des valeurs de mappage est produite.

explode_outer ne peut être placé que dans la liste de sélection ou dans une vue latérale. Lors du placement de la fonction dans la liste de sélection, il ne doit y avoir aucune autre fonction de génération dans la même liste de sélection.

La colonne produite par l’éclatement d’un tableau est nommée col par défaut, mais peut être un alias. Les colonnes d’une carte sont par défaut appelées key et value . Ils peuvent également être dotés d’un alias à l’aide d’un tuple d’alias tel que AS (myKey, myValue) .

Exemples

> 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