一架梯子,一头程序猿,仰望星空!
MYSQL基础面试题 > 内容正文

介绍下MySQL中整型、浮点数、日期时间类型的数据大小和范围?


问题简答

MYSQL常用的INT占用4个字节,TIMESTAMP占用4字节,FLOAT:4字节,其他请参考下面

问题详解:

整型类型

  • TINYINT:1字节,范围为-128到127(有符号),0到255(无符号)
  • SMALLINT:2字节,范围为-32768到32767(有符号),0到65535(无符号)
  • MEDIUMINT:3字节,范围为-8388608到8388607(有符号),0到16777215(无符号)
  • INT/INTEGER:4字节,范围为-2147483648到2147483647(有符号),0到4294967295(无符号)
  • BIGINT:8字节,范围为-9223372036854775808到9223372036854775807(有符号),0到18446744073709551615(无符号)

浮点类型

  • FLOAT:4字节,有符号的取值范围:-3.402823466E+38~-1.175494351E-38,无符号的取值范围:0 和 -1.175494351E-38~-3.402823466E+38
  • DOUBLE:8字节,有符号的取值范围:-1.7976931348623157E+308~-2.2250738585072014E-308,无符号的取值范围:0 和 -2.2250738585072014E-308~-1.7976931348623157E+308

日期和时间类型

  • DATE:3字节,日期类型,范围为1000-01-01到9999-12-31
  • TIME:3或4字节,时间类型,范围为’-838:59:59’到’838:59:59’
  • DATETIME:8字节,日期时间类型,范围为1000-01-01 00:00:00到9999-12-31 23:59:59
  • TIMESTAMP:4字节,时间戳类型,范围为1970-01-01 00:00:01到2038-01-19 03:14:07
  • YEAR:1字节,年份类型,范围为1901到2155(仅存储年份)