Compartilhar via


Tipo de VARIANT

Aplica-se a:marca de seleção sim Databricks SQL marca de seleção sim Databricks Runtime 15.3 e versões superiores

Importante

Esse recurso está em uma versão prévia.

Representa dados semiestruturados.

Observação

Tabelas Iceberg v2 não dão suporte a colunas VARIANT. O Apache Iceberg v3 oferece suporte a VARIANT colunas. Consulte Usar recursos do Apache Iceberg v3.

Sintaxe

VARIANT

limites

O tipo dá suporte ao armazenamento de dados OBJECTARRAYsemiestruturados e tipos escalares. Para armazenar STRUCT e MAP usar a função to_variant_object . MAP as chaves devem ser 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

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

> SELECT to_variant_object(map('key', 'val'));
  { "key": "val" }

> SELECT to_variant_object(struct('field', 'val'));
  { "field": "val" }