TipoVARIANT
Aplica-se a: Databricks Runtime 15.3 e posterior
Representa dados semiestruturados.
Sintaxe
VARIANT
Limites
O tipo dá suporte ao armazenamento de dados semiestruturados, incluindo STRUCT
ARRAY
MAP
e tipos escalares.
VARIANT
só pode armazenar tipos MAP
com chaves do tipo STRING
.
Literais
Consulte a função parse_json para obter detalhes sobre como criar um valor VARIANT
.
Você também pode usar a função CAST
para converter um literal de algum tipo em VARIANT
.
Observações
- Para extrair um valor de um
VARIANT
, você pode usar a- Função variant_get usando uma expressão de caminho JSON para navegar em um tipo complexo.
- Operador : (sinal de dois-pontos) para analisar o
VARIANT
usando uma expressão de caminho JSON. - Função try_variant_get usando um caminho JSON para navegar em um tipo complexo com tolerância a erros.
- Função de conversão ou operador :: (sinal de dois-pontos duplo) para converter o
VARIANT
em um tipo específico. - Função try_cast para converter o
VARIANT
em um tipo específico com tolerância a erros.
- Para inspecionar o tipo de um valor
VARIANT
, use a- Função schema_of_variant para um valor individual.
- Função de agregação schema_of_variant_agg para uma coleção de valores.
Exemplos
> SELECT parse_json('{"key": 123, "data": [4, 5, "str"]}');
{"data":[4,5,"str"],"key":123}
> SELECT parse_json(null);
null
> SELECT parse_json('123');
123
> SELECT CAST(123.456 AS VARIANT);
123.456