数据类型

最近更新时间:2019-10-23 17:36:00

流计算 Oceanus 采用符合 ANSI SQL 规范的类型定义。定义 CKafka 数据源和目的时,所允许的类型有限制。而定义云数据库 TencentDB 或视图时,允许使用所有支持的类型。

定义 CKafka 数据源和目的表时允许的类型

对于使用 CKafka 作为数据源(Source)和数据目的(Sink)表时,流计算 Oceanus 支持的数据类型如下:

类型名称 面向 Java 用户的说明
BIGINT 等同于 Java 的 Long 类型,占8个字节。
DOUBLE 等同于 Java 的 Double 类型,占8个字节。
BOOLEAN 等同于 Java 的 Boolean 类型,可为 True 或 False。
TIMESTAMP 支持标准 SQL 的 Timestamp 表示,格式为 YYYY-MM-DD HH:MM:SS
也支持 Unix 时间戳(毫秒)表示,例如1527501994642。
VARCHAR 字符串,等同于 Java 的 String 类型,不限长度,无需指定容量。
也兼容 VARCHAR(容量)这种写法,但容量可以填写任意正数,无实际意义。

定义 TencentDB 数据源或创建视图(VIEW)时允许的类型

在使用 TencentDB(关系数据库)对数据源定义、创建视图(CREATE VIEW)、以及使用 CAST() 进行类型转换时,本系统支持的全部数据类型如下:

类型名称 面向 Java 用户的说明
VARCHAR 字符串,等同于 Java 的 String 类型,不限长度,无需指定容量。
BOOLEAN 等同于 Java 的 Boolean 类型,可为 True 或 False。
TINYINT 等同于 Java 的 Byte 类型,占1个字节。
SMALLINT 等同于 Java 的 Short 类型,占2个字节。
INTEGER 或 INT 等同于 Java 的 Integer 类型,占4个字节。
BIGINT 等同于 Java 的 Long 类型,占8个字节。
REAL 或 FLOAT 等同于 Java 的 Float 类型,占4个字节。
DOUBLE 等同于 Java 的 Double 类型,占8个字节。
DECIMAL 等同于 Java 的 BigDecimal,可用来表示大数字以及任意精度小数。
DATE 等同于 java.sql.Date,可表示指定的年、月、日(YYYY-MM-DD)。
TIME 等同于 java.sql.Time,可表示指定的时、分、秒(HH:MM:SS)。
TIMESTAMP 支持标准 SQL 的 Timestamp 表示,格式为 YYYY-MM-DD HH:MM:SS,例如2018-06-13 16:58:10。
也支持 Unix 时间戳(毫秒)表示,例如1527501994642。
INTERVAL YEAR TO MONTH 表示按月计算的时间周期,内部使用 Integer 类型保存数据,占4个字节。详见 时间相关函数
INTERVAL DAY TO SECOND 表示按毫秒计算的时间周期,内部使用 Long 类型保存数据,占8个字节。详见 时间相关函数
ARRAY 数组,对应 Java 的数组。详见 数组函数
MAP 映射,对应 Java 的 HashMap。详见 MAP 映射操作函数
MULTISET 允许保存重复值的集合。