本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
数据类型
下表汇总了Amazon Kinesis Data Analytics 支持的数据类型。
SQL 数据类型 | JSON 数据类型 | 描述 | 注意 |
---|---|---|---|
BIGINT |
number |
64 位有符号整数 |
|
BINARY |
BASE64 编码的字符串 |
二进制(非字符)数据 |
子字符串适用于二进制。串联不适用于二进制。 |
BOOLEAN |
布尔值 |
TUE、FALSE 或 NULE |
评估结果为 “真”、“假” 和 “未知”。 |
CHAR (n) |
字符串 |
固定长度 n 的字符串。也可指定为 CHARACTER |
n 必须大于 0 且小于 65535。 |
DATE |
字符串 |
日期是一个日历日(年/月/日)。 |
精度就是一天。范围从最大值(大约 +229(以年为单位)到最小值 -229 不等。 |
DECIMAL DEC NUMERIC |
number |
一个固定点,最多有 19 个有效数字。 |
可以用十进制、十进制或数字指定。 |
DOUBLE DOUBLE PRECISION |
number |
一个 64 位浮点数 |
64 位近似值;-1.79E+308 到 1.79E+308。遵循 ISO DOUBLE PRECISION 数据类型,53 位用于科学记数法中的数字尾数,表示 15 位的精度和 8 字节的存储空间。 |
INTEGER INT |
number |
3 2 2 2 2 2 2. 范围为 -2147483648 到 2147483647 [2** (31) 到 2** (31)-1] |
|
INTERVAL <timeunit> [TO <timeunit>] |
字符串 |
支持日间隔,不支持年月间隔 |
允许在日期算术的表达式中使用,但不能用作表或流中列的数据类型。 |
<timeUnit> |
字符串 |
间隔值的单位 |
支持的单位是年、月、日、小时、分钟和秒 |
SMALLINT |
number |
16 位有符号整数 |
2767 777 777 777 77 2777 77 77 [2** (15) 至 2** (15) -1] |
REAL |
number |
32 2 2 3 2 2 2 2 2. |
按照 ISO REAL 数据类型,24 位用于科学记数法中的数字尾数,表示 7 位的精度和 4 字节的存储空间。最小值为 -3.40E+38;最大值为 3.40E+38。 |
TIME |
字符串 |
时间是一天中的时间(小时:分钟:秒)。 |
其精度是毫秒;其范围是 00:00:00.000 到 23:59:59.999。由于系统时钟以 UTC 运行,因此不考虑用于存储在 TIME 或 TIMESTAMP 列中的值的时区。 用于存储在 “时间” 或 “时间戳” 列中的值。 |
TIMESTAMP |
字符串 |
时间戳是日期和时间的组合。 |
时间戳值的精度始终为 1 毫秒。它没有特定的时区。由于系统时钟以 UTC 运行,因此不考虑用于存储在 TIME 或 TIMESTAMP 列中的值的时区。其范围从最大值(大约 +229(以年为单位)到最小值 -229 不等。每个时间戳都存储为带符号的 64 位整数,其中 0 代表 Unix 时代(1970 年 1 月 1 日上午 00:00)。这意味着最大的时间戳值代表1970年之后的约3亿年,最小的值代表1970年之前的大约3亿年。按照 SQL 标准,时间戳值具有未定义的时区。 |
TINYINT |
number |
8 位有符号整数 |
127 128 128 128 128 128 128 8 128 |
VARBINARY (n) |
BASE64 编码的字符串 |
也可以指定为二进制变化 |
n 必须大于 0 且小于 65535。 |
VARCHAR (n) |
字符串 |
也可以指定为字符变化 |
n 必须大于 0 且小于 65535。 |
注意
关于角色:
-
Amazon Kinesis Data Analytics 仅支持 Java 单字节字符集。
-
不支持隐式类型转换。也就是说,当且仅当字符来自相同的角色库并且是数据类型 CHARACTER 或 CHARACTER 的值时,字符才可以相互分配。
关于数字:
-
如果NUMERIC、DECIMAL、INTEGER、BIGINT、SMALLINT、TINTEGER 和 DOUBLE PRECISION。
以下几组数据类型是同义词:
-
DECIMAL
-
双精度和双精度
-
CHINTER
-
CHAR 变化或者角色变化还有 VARCHAR
-
,BINE、
-
整数和整数
-
二进制值(数据类型 BINARY 和 BINARY VARIGING)始终是相互比较的,并且可以相互分配。
关于日期、时间和时间戳:
-
不支持隐式类型转换(也就是说,只有当赋值的源和目标都是 DATE 类型,或者两者都是 TIMESTAMP 类型或两者都是 TIMESTAMP 类型时,日期时间值才可以相互分配)。
-
Amazon Kinesis Data Analytics 时区始终为世界标准时间。时间函数,包括Amazon Kinesis Data Analytics 扩展程序 CURRENT_ROW_TIMESTAMP,以世界标准时间返回时间。