面试题答案
一键面试- 选择的整数类型:
TINYINT UNSIGNED
- 原因:
- 用户年龄范围在1到120岁之间,
TINYINT
类型有符号时范围是 - 128到127,无符号时范围是0到255,能满足1到120的年龄存储需求。 - 相比其他整数类型,如
SMALLINT
(有符号范围 - 32768到32767,无符号范围0到65535)、INT
(有符号范围 - 2147483648到2147483647,无符号范围0到4294967295)等,TINYINT
占用空间更小,在满足需求的情况下,能有效节省存储空间。
- 用户年龄范围在1到120岁之间,
- 存储空间优势:
TINYINT
类型在MySQL中,无论是有符号还是无符号,通常占用1个字节(8位)存储空间。- 而
SMALLINT
占用2个字节,INT
占用4个字节。使用TINYINT UNSIGNED
存储年龄,相比SMALLINT
可节省1个字节,相比INT
可节省3个字节。在数据量较大时,这种存储空间的节省能带来显著的成本降低和性能提升(如磁盘I/O减少、内存占用降低等)。