# Supported Data Types

* [ARRAY](#array)
* [BOOLEAN](#boolean)
* [DATE](#date)
* [DECIMAL](#decimal)
* [DOUBLE](#doable)
* [FLOAT](#float)
* [INT32](#int32)
* [INT64](#int64)
* [JSON](#json) *(as a string)*
* [STRING](#string)
* [STRUCT](#struct)

### ARRAY

An array of the given component type.

Examples:

* `ARRAY[1, 2, 3]`
* `select array[1,2,3,4]`

### BOOLEAN

Represents boolean values TRUE and FALSE

### DATE

Represents values having values of fields year, month, and day.

### DECIMAL

Represents the numbers with precision and a scale factor of x.

### DOUBLE

Represents x-byte single/variable-precision floating point numbers.

### FLOAT

Represents x-byte single/variable-precision floating point numbers.

### INT32

Represents a 32-bit signed two’s complement integer with a minimum value of $$-2^{31}$$ and a maximum value of $$2^{31}-1$$.

### INT64

Represents a 64-bit signed two’s complement integer with a minimum value of $$-2^{63}$$ and a maximum value of $$2^{63} - 1$$.

### JSON

JSON querying is supported when the JSON data is saved in the form of a string.

### STRING

Represents character string values.

### STRUCT

Represents values with the structure described by a sequence of fields.

Example:

* `struct({value:prod,dpid:51})`
* `select tablename.columnname.structfield1.structfield2 from tablename`
