一、语法
在 CREATE TABLE 语句的列定义中:
column_name TINYINT
注意:由于 TCHouse-X 内表暂不支持 TINYINT,系统在建表阶段会自动完成类型提升(Type Promotion),将 TINYINT 字段统一处理为 INT 类型。
二、范围
·取值范围:-128 到 127。
·注意:TCHouse-X 不支持无符号(UNSIGNED)子类型。
三、隐式转换
TCHouse-X 会自动将 TINYINT 转换为更大范围的整数类型(SMALLINT, INT, BIGINT)或浮点类型(FLOAT, DOUBLE)。
四、显式转换
·转换为 STRING 或 TIMESTAMP 必须使用 CAST()。
·TIMESTAMP/TIMESTAMPTZ 转换规则:将整数值 N 转换为 TIMESTAMP/TIMESTAMPTZ时,系统会生成一个以 Unix 纪元(1970-01-01 00:00:00 UTC)为基准、增加 N 秒后的时间戳。在查询展示时,该值会自动转换为当前系统时区对应的本地时间。
·TIMESTAMPNTZ 转换规则:将整数值 N 转换为 TIMESTAMPNTZ时,系统会生成一个以 Unix 纪元(1970-01-01 00:00:00 UTC)为基准、增加 N 秒后的时间戳。
五、溢出处理
系统将溢出结果当作 NULL 返回,例如,CAST(-200 AS TINYINT) 返回 NULL,CAST(200 AS TINYINT) 返回 NULL)。
六、使用说明与限制
·选型建议:如果数值可能超出 127,请改用 SMALLINT 类型。
·NULL 处理:将任何非数字值(Non-numeric)强制转换为此类型将产生 NULL。