此类型获取布尔值 true
和 false
8位有符号整数,最小值为-2^7,最大值为2^7 - 1
16位有符号整数,最小值为-2^15,最大值为2^15 - 1
32位有符号整数,最小值为-2^31,最大值为2^31 - 1,可使用INT
代替
64位有符号整数, 最小值为 -2^63 ,最大值为 2^63 - 1
real是32位不精确,可变精度, 基于IEEE标准754的二进制浮点算法的实现
double是64位不精确,可变精度, 基于IEEE标准754的二进制浮点算法的实现
固定精度的十进制数,支持38位精度,但18位时性能最好,有两个参数,总位数precision
,小数部分的位数scale
类型定义示例:
DECIMAL(18,3)
可变长度字符数据,可设置最大长度。例:varchar
,varchar(12)
定长字符数据。无参时默认长度为1,例:char
,char(12)
可变长度二进制数据。二进制数据必须使用前缀为X
或x
的十六进制格式。
日期,年月日。
DATE '2018-10-15'
不带时区的时间,P为精度,默认为3。精度的可选值为 3|6|9|12
,分别代表毫秒,微秒,纳秒和皮秒。
TIME '03:04:05.321'
带时区的时间,秒的精度为毫秒,时区使用UTC时区的偏移值表示。
TIME '03:04:05.321 +08:00'
不带时区的时间戳,是DATE和TIME(P)类型的组合,P为精度,默认为3。精度的可选值为 3|6|9|12
,分别代表毫秒,微秒,纳秒和皮秒。
TIMESTAMP '2001-08-22 03:04:05.321'
带时区的时间戳,P为精度,默认为3。精度的可选值为 3|6|9|12
,分别代表毫秒,微秒,纳秒和皮秒。时区使用UTC时区的偏移值表示。
TIMESTAMP '2001-08-22 03:04:05.321 +08:00'
时间间隔,支持的间隔单位包括,YEAR
,QUARTER
,MONTH
,WEEK
,DAY
,HOUR
,MINUTE
,SECOND
,MILLISECOND
。
INTERVAL '3' MONTH
JSON值类型,包括JSON对象、JSON数组、JSON字符串。
数组。
ARRAY['a', 'b', 'c']
键值对。
MAP(ARRAY['a', 'b', 'c'], ARRAY[1, 2, 3])
由混合类型的字段组成的行结构,其中的字段可以是任何SQL类型。
CAST(ROW(1, 2.0) AS ROW(x BIGINT, y DOUBLE))