Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
Databricks SQL
Databricks Runtime 15.3 e superior
Retorna um conjunto de linhas desaninhando input.
No Databricks SQL e Databricks Runtime 16.1 e superior, esta função suporta a invocação de parâmetros nomeados.
Sintaxe
variant_explode ( input )
Argumentos
-
variantExpr: UmaVARIANTexpressão, representando umVARIANTobjeto ouVARIANT ARRAY.
Devoluções
Um conjunto de linhas composto pelos elementos do VARIANT ARRAYou as chaves e valores do objeto VARIANT.
As colunas produzidas por variant_explode são:
pos INTkey STRING-
value VARIANT.
Ao explodir um objeto VARIANT, as colunas de saída key e value representam as chaves e os valores do objeto.
Ao expandir uma matriz VARIANT, a saída key é sempre NULLe a coluna value da saída representa os elementos da matriz.
Se input for NULL, ou não for um VARIANT ARRAY ou VARIANT objeto, nenhuma linha será produzida.
Para produzir uma única linha de NULL valores nesse caso, use a função variant_explode_outer .
Exemplos
-- Simple example
> SELECT *
FROM variant_explode(parse_json('[1, "a", {"b": "hello"}]'));
pos key value
--- ---- -------------
0 NULL 1
1 NULL "a"
2 NULL {"b":"hello"}
> SELECT *
FROM variant_explode(parse_json('{"foo":1,"bar":"hello"}'));
pos key value
--- ---- -------------
0 bar "hello"
1 foo 1
-- Using lateral correlation
> SELECT t.value AS outer, u.value AS inner
FROM variant_explode(parse_json('[[1, 2], [3, 4]]')) AS t,
LATERAL variant_explode(t.value) AS u;
outer inner
----- -----
[1,2] 1
[1,2] 2
[3,4] 3
[3,4] 4