Delen via


schema_of_variant-functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 15.3 en hoger

Retourneert het schema van een VARIANT-expressie in DDL-indeling.

Syntaxis

schema_of_variant ( variantExpr )

Argumenten

  • variantExpr: Een VARIANT expressie.

Retouren

Een STRING die een schemadefinitie van de variantExprbevat. De typen in het schema zijn de afgeleide, opgemaakte SQL-typen.

Gebruik de VARIANT values aggregatiefunctie om het geaggregeerde schema van een verzameling van af te leiden.

Opmerkingen

Bij het bepalen van het schema voor een ARRAY<elementType>kan de elementType worden afgeleid als VARIANT als er conflicterende typen in de gegevens zijn gevonden.

Voorbeelden

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