Udostępnij za pośrednictwem


Funkcja variant_get

Dotyczy:zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 15.3 i nowsze

Wyodrębnia wartość typu z variantExprklasy , określoną przez path.

Składnia

variant_get ( variantExpr, path, type )

Argumenty

  • variantExpr VARIANT: wyrażenie.
  • path STRING: literał z dobrze sformułowanym wyrażeniem ścieżki JSON.
  • type STRING: literał definiujący typ.

Zwraca

Wartość typu type.

Jeśli nie można odnaleźć obiektu, NULL zostanie zwrócony. Jeśli obiekt zostanie znaleziony, ale nie można go rzutować do żądanego typu, usługa Azure Databricks zgłasza INVALID_VARIANT_CAST. Aby zwrócić NULL zamiast błędu, użyj funkcji try_variant_get .

Przykłady

-- 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.