Partilhar via


Função schema_of_variant

Aplica-se a: Marque Sim Databricks SQL Marque Sim Databricks Runtime 15.3 e posterior

Retorna o esquema de uma VARIANT expressão no formato DDL.

Sintaxe

schema_of_variant ( variantExpr )

Argumentos

  • variantExpr: Uma VARIANT expressão.

Devoluções

A STRING segurando uma definição de esquema do variantExpr. Os tipos no esquema são os tipos SQL formatados derivados.

Para derivar o esquema agregado de uma coleção de VARIANT values, use a função schema_of_variant_agg agregada.

Notas

Ao determinar o esquema para um ARRAY<elementType>, o pode ser inferido elementType como VARIANT se houvesse tipos conflitantes encontrados nos dados.

Exemplos

-- Simple example
> SELECT schema_of_variant(parse_json('{"key": 123, "data": [4, 5]}'))
  OBJECT<data: ARRAY<BIGINT>, key: BIGINT>

-- Conflicting element types in array
> SELECT schema_of_variant(parse_json('{"data": [{"a":"a"}, 5]}'))
  OBJECT<data: ARRAY<VARIANT>>

-- A typed literal
> SELECT schema_of_variant(123.4::VARIANT);
  DECIMAL(4,1)

-- Contrasting schema_of_variant() with typeof()
> SELECT typeof(123.4::VARIANT);
  VARIANT