Функция schema_of_variant
Область применения: Databricks SQL Databricks Runtime 15.3 и более поздних версий
Возвращает схему VARIANT
выражения в формате DDL.
Синтаксис
schema_of_variant ( variantExpr )
Аргументы
variantExpr
: ВыражениеVARIANT
.
Возвраты
Содержит STRING
определение variantExpr
схемы объекта .
Типы в схеме являются производными типами SQL.
Чтобы получить агрегированную схему коллекцииVARIANT values
, используйте schema_of_variant_agg агрегатную функцию.
Примечания.
При определении схемы для объекта ARRAY<elementType>
elementType
можно определить, как VARIANT
если бы в данных были конфликтующие типы.
Примеры
-- 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