Freigeben über


try_variant_get-Funktion

Gilt für: Häkchen gesetzt ja Databricks SQL Häkchen gesetzt ja 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: Ein VARIANT-Ausdruck.
  • path: Ein STRING-Literal mit einem wohlgeformten JSON-Pfadausdruck.
  • type: Ein STRING-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', 'array<int>')
  null