Java面试八股之MySQL支持哪些数据类型

  1. MySQL支持哪些数据类型

MySQL支持多种数据类型,这些类型可以大致分为三大类:数值类型、日期/时间类型和字符串类型。下面是一些常见的数据类型及其用途:

数值类型

整数类型:

TINYINT:通常占用1字节。

SMALLINT:通常占用2字节。

MEDIUMINT:通常占用3字节。

INT 或 INTEGER:通常占用4字节。

BIGINT:通常占用8字节。

这些类型可以附加 UNSIGNED 属性来表示无符号数,或者 ZEROFILL 来指定零填充。

浮点和定点类型:

FLOAT 或 REAL:单精度浮点数。

DOUBLE:双精度浮点数。

DECIMAL 或 NUMERIC:定点数,可以指定精度和小数位数。

日期/时间类型

DATE:只存储日期,格式为 'YYYY-MM-DD'。

TIME:只存储时间,格式为 'HH:MM:SS'。

DATETIME:存储日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'。

TIMESTAMP:存储时间戳,可以自动更新为当前时间。

YEAR:专门用于存储年份,格式为 'YYYY' 或 'YY'。

字符串类型

CHAR:定长字符类型。

VARCHAR:变长字符类型。

BINARY 和 VARBINARY:二进制字符串类型,与 CHAR 和 VARCHAR 类似但存储二进制数据。

TEXT 和其变体 (TINYTEXT, MEDIUMTEXT, LONGTEXT):用于存储较大的文本数据。

BLOB 和其变体 (TINYBLOB, MEDIUMBLOB, LONGBLOB):用于存储较大的二进制数据。

ENUM:用于存储枚举值,即从一组预定义的值中选择。

SET:用于存储从一组预定义值中选取的多个值。

其他类型

BIT:存储位字段。

GEOMETRY:用于存储空间数据,例如点、线、多边形等。

每种数据类型都有特定的存储需求和适用场景,选择合适的数据类型对于优化数据库性能和存储效率非常重要。例如,使用更精确的类型(如 INT 而不是 BIGINT)可以节省存储空间,而使用适当的日期/时间类型可以简化查询和数据处理。

如果大家需要视频版本的讲解,欢迎关注我的B站:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值