Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime 15.3 und höher
Extrahiert einen Wert vom Typ type aus variantExpr, angegeben von path, oder NULL, wenn eine Umwandlung in den Zieltyp nicht möglich ist.
Syntax
try_variant_get ( variantExpr, path, type )
Argumente
-
variantExpr: EinVARIANT-Ausdruck. -
path: EinSTRING-Literal mit einem wohlgeformten JSON-Pfadausdruck. -
type: EinSTRING-Literal, das den Typ definiert.
Gibt zurück
Ein Wert vom Typ type.
Wenn das Objekt nicht gefunden wird oder wenn es nicht in type umgewandelt werden kann, wird NULL zurückgegeben.
Um einen Fehler auszugeben, wenn die Umwandlung fehlschlägt, verwenden Sie variant_get.
Beispiele
-- Simple example
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.data[1].a', 'string')
hello
-- missing path
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.missing', 'int')
null
-- Invalid cast
> SELECT try_variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.key', 'boolean')
null
-- These are synonymous to:
> SELECT '{"key": 123, "data": [4, {"a": "hello"}, "str"]}':data[1].a ?::STRING;
hello
> SELECT '{"key": 123, "data": [4, {"a": "hello"}, "str"]}':missing ?::STRING;
null
> SELECT '{"key": 123, "data": [4, {"a": "hello"}, "str"]}':key ?::BOOLEAN;
null