Categories: Conversion, Variant Type
TO_VARIANT Preview
Converts a value to VARIANT type.
Syntax
TO_VARIANT(expression Any type) → VARIANT
- expression: The value to convert to VARIANT.
Examples
TO_VARIANT exampleSELECT TO_VARIANT(42)
-- (VARIANT) 42
SELECT TO_VARIANT('hello')
-- (VARIANT) "hello"
SELECT TO_VARIANT(TRUE)
-- (VARIANT) true
SELECT TO_VARIANT(ARRAY[1, 2, 3])
-- (VARIANT) [1,2,3]
Usage Notes
Supported types
TO_VARIANT accepts most Dremio data types, including:
- Primitive types: BOOLEAN, INT, BIGINT, FLOAT, DOUBLE, DECIMAL, VARCHAR, VARBINARY, UUID
- Date/time types: DATE, TIME, TIMESTAMP
- Complex types: ARRAY, STRUCT
Unsupported types
The following types cannot be converted to VARIANT:
- MAP - raises an error
- INTERVAL - raises an error
Type behavior
When you convert a VARIANT value with TO_VARIANT, it passes through unchanged (no double-wrapping).
When you convert a STRUCT column to VARIANT, it becomes a VARIANT<STRUCT>. When you convert an ARRAY, it becomes a VARIANT<ARRAY>.