Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
Databricks SQL
Databricks Runtime 15.3 a novější
Vrátí sadu řádků rozbalením input.
V Databricks SQL a Databricks Runtime 16.1 a vyšší tato funkce podporuje pojmenované vyvolání parametru.
Syntaxe
variant_explode ( input )
Argumenty
-
variantExprVARIANT: Výraz představujícíVARIANTobjekt neboVARIANT ARRAY.
Návraty
Sada řádků složená z prvků VARIANT ARRAYnebo klíčů a hodnot objektu VARIANT.
Sloupce vytvořené variant_explode jsou:
pos INTkey STRING-
value VARIANT.
Při explodování objektu VARIANT představují výstupní key a value sloupce klíče a hodnoty objektu.
Při rozbalení pole VARIANT je výstup key vždy NULLa sloupec value představuje prvky pole.
Pokud input je NULL, nebo není VARIANT ARRAY objekt nebo VARIANT objekt, nejsou vytvořeny žádné řádky.
Pokud chcete v tomto případě vytvořit jeden řádek NULL hodnot, použijte funkci variant_explode_outer.
Příklady
-- 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
Související funkce
-
variant_explode_outertabulkově hodnotová funkce