Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Função com valor de tabela
Aplica-se a:
Databricks SQL
Databricks Runtime 15.3 e versões superiores
Retorna um conjunto de linhas desinstalando input.
No Databricks SQL e no Databricks Runtime 16.1 e acima, essa função dá suporte à invocação de parâmetro nomeada.
Sintaxe
variant_explode ( input )
Argumentos
-
variantExpr: uma expressãoVARIANT, representando um objetoVARIANTouVARIANT ARRAY.
Devoluções
Um conjunto de linhas composto pelos elementos da VARIANT ARRAY ou 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, a saída key e as colunas value representam as chaves e os valores do objeto.
Ao explodir uma matriz VARIANT, a saída key é sempre NULL, e a coluna de saída value representa os elementos da matriz.
Se input for NULL ou não for um objeto VARIANT ARRAY ou um objeto VARIANT, 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