Compartilhar via


Função variant_get

Aplica-se a: marca de seleção positiva Databricks SQL verificação marcada como sim Databricks Runtime 15.3 e posterior

Extrai um valor do tipo de variantExpr, especificado por path.

Sintaxe

variant_get ( variantExpr, path, type )

Argumentos

  • variantExpr: uma expressão VARIANT.
  • path: um literal de STRING com uma expressão de caminho JSON bem formada.
  • type: um literal de STRING que define o tipo.

Devoluções

Um valor do tipo type.

Se o objeto não puder ser encontrado, será retornado um valor NULL. Se o objeto for encontrado, mas não puder ser convertido no tipo desejado, o Azure Databricks gerará INVALID_VARIANT_CAST. Para retornar NULL em vez de um erro, use a função try_variant_get.

Exemplos

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