SMALLINT
16 位有符号整型(SMALLINT)占用 2 个字节存储空间,适合存储范围在 -32768 到 32767 之间的整数值,比 INT 更节省存储空间。
语法
SHORT 是 SMALLINT 的别名,用于兼容其他数据库的迁移脚本。别名在解析时立即转换为规范类型,详见类型别名。
值范围
| 边界 | 值 |
|---|---|
| 最小值 | -32768 |
| 最大值 | 32767 |
字面量后缀:
S(如 100S、-32768S)
示例
-
使用 SMALLINT 字面量后缀:
返回:
100 -
将整数转换为 SMALLINT(边界值):
返回:
,32767-32768 -
将字符串转换为 SMALLINT:
返回:
1000 -
溢出行为(超出范围返回 NULL):
返回:
NULL -
NULL 值处理:
返回:
NULL
注意事项
- 值范围为 -32768 到 32767,超出范围的 CAST 转换返回 NULL,不会报错。
- 字面量后缀为
(大小写均可),如S
、100S
。-32768S - SMALLINT 参与算术运算时,结果类型可能自动提升为 INT,避免中间结果溢出。
- 对于超出范围的整数,应使用
或INT
。BIGINT - CAST 转换无效字符串(如
)时返回 NULL。'abc'
联系我们
