MySQL数据类型
MySQL数据类型分为三种:数值类型,日期/时间类型和字符串类型。
数值类型包括定点型(decimal), 浮点型(float和double)和整型(从小到大5种int)。
分类 | 类型 | 大小(单位字节) | 用途 |
定点型 | decimal | decimal(M,D) 如果M>D,为M+2否则为D+2 | 小数值 |
浮点型 | float | 4 | 单精度浮点数值 |
double | 8 | 双精度浮点数值 | |
整型 | tinyint | 1 | 小整数值 |
smallint | 2 | 大整数值 | |
mediumint | 3 | 大整数值 | |
int | 4 | 大整数值 | |
bigint | 8 | 极大整数值 |
日期/时间类型包括1个year,1个date,3种time。
类型 | 大小(单位字节) | 格式 | 用途 |
year | 1 | YYYY | 年份值 |
date | 3 | YYYY-MM-DD | 日期值 |
time | 3 | HH:MM:SS | 时间值 |
timestamp | 4 | YYYYMMDD HHMMSS | 混合日期和时间值 |
datetime | 8 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 |
字符串类型分为两种:二进制字符串和文本字符串。
二进制字符串包括1个bit,2种binary,4种blob。
类型 | 大小(单位字节) | 用途 |
bit | 1 | 位字段 |
binary | 最大255字节 | 固定长度二进制字符串 |
varbinary | 最大65535字节 | 可变长度二进制字符串 |
tinyblob | 最大255字节 | 短二进制字符串 |
blob | 最大65535字节 | 二进制字符串 |
mediumblob | 最大16M | 中等长度的二进制字符串 |
longblob | 最大4G | 极大长度的二进制字符串 |
文本字符串包括1个enum,1个set,2种char,4种text。
类型 | 大小(单位字节) | 用途 |
enum | 1~2 | 枚举类型 |
set | 最大8字节 | 类似枚举类型的字符串 |
char | 最大255字节 | 定长字符串 |
varchar | 最大65535字节 | 变长字符串 |
tinytext | 最大255字节 | 短文本数据 |
text | 最大65535字节 | 长文本数据 |
mediumtext | 最大16M | 中等长度文本数据 |
longtext | 最大4G | 极大文本数据 |
选择建议
尽量选择可以保证正确存储数据的最小数据类型。小的数据类型占用的空间少,操作起来更快。
使用MySQL日期/时间类型来存储日期和时间。日期/时间类型通常比用字符串类型或者数值类型存储日期占用的空间小,而且还有很多自带的函数进行各种日期时间的转换操作。
使用enum或set类型来存储枚举值,比使用字符串来存储枚举值占用的空间更小。
使用smallint unsigned类型来存储IP地址,比使用字符串类型占用的空间更小。可以使用MySQL自带的INET_ATON()和INET_NTOA函数在数值类型和字符串类型之间转换IP地址。
文章转载自码上记录,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【MySQL 30周年庆】MySQL 8.0 OCP考试限时免费!教你免费领考券
墨天轮小教习
3360次阅读
2025-04-25 18:53:11
MySQL 30 周年庆!MySQL 8.4 认证免费考!这次是认真的。。。
严少安
911次阅读
2025-04-25 15:30:58
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
536次阅读
2025-04-17 17:02:24
MySQL 8.0 OCP 1Z0-908 考试解析指南(二)
JiekeXu
361次阅读
2025-04-30 17:37:37
SQL优化 - explain查看SQL执行计划(下)
金同学
301次阅读
2025-05-06 14:40:00
MySQL 30 周年庆!MySQL 8.4 认证免费考!这次是认真的。。。
数据库运维之道
299次阅读
2025-04-28 11:01:25
MySQL 8.0 OCP 1Z0-908 考试题解析指南
青年数据库学习互助会
292次阅读
2025-04-30 12:17:54
MySQL 官方准备了 3 个月的羊毛,万万没想到 8 天就被薅秃了,看看JieKeXu怎么说?
青年数据库学习互助会
263次阅读
2025-05-09 10:07:42
MySQL 8.4 新特性深度解析:功能增强、废弃项与移除项全指南
JiekeXu
249次阅读
2025-04-18 20:21:32
4月“墨力原创作者计划”获奖名单公布!
墨天轮编辑部
208次阅读
2025-05-13 16:21:59