Skip to main content

Data Types

These data types are used to represent data across all tables in Sundial. All functions are also defined on top of these data types

Data TypeDefinitionExample
IntegerA 32-bit signed integer.42
LongA 64-bit signed integer.1.2346E+14
FloatA single-precision 32-bit IEEE 754 floating point.3.14
DoubleA double-precision 64-bit IEEE 754 floating point.2.71828183
DecimalA fixed-point number with user-defined precision and scale.DECIMAL '123.45'
StringA variable-length character string.'Hello, World!'
BinaryA variable-length binary data.X'1F2E3D'
BooleanA true or false value.TRUE
DateA calendar date (year, month, day).DATE '2023-10-05'
DateTimeA date and time without a time zone.TIMESTAMP '2023-10-05 12:34'
NullRepresents a missing or undefined value.NULL
DayTimeIntervalAn interval of days, hours, minutes, and seconds.INTERVAL '2' DAY
Map<K, V>A collection of key-value pairs.MAP(ARRAY['a'], ARRAY[1])
Array<V>An ordered collection of elements.ARRAY[1, 2, 3]
Array<NullType>Empty collection of elements of any type.ARRAY()
StructA complex type with named fields.ROW(1, 'a', TRUE)