Delen via


variant_get-functie

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 15.3 en hoger

Extraheert een waarde van het type variantExpr, opgegeven door path.

Syntaxis

variant_get ( variantExpr, path, type )

Argumenten

  • variantExpr: Een VARIANT expressie.
  • path: Een STRING letterlijke met een goed opgemaakte JSON-padexpressie.
  • type: Een STRING letterlijke definitie van het type.

Retouren

Een waarde van het type type.

Als het object niet kan worden gevonden, NULL wordt het geretourneerd. Als het object wordt gevonden maar niet naar het gewenste type kan worden gecast, wordt Azure Databricks gegenereerd INVALID_VARIANT_CAST. Als u wilt terugkeren NULL in plaats van een fout, gebruikt u de functie try_variant_get .

Voorbeelden

-- Simple example
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.data[1].a', 'string')
  hello

-- missing path
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.missing', 'int')
  null

-- Invalid cast
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.key', 'array<int>')
  Error: INVALID_VARIANT_CAST.