「MYSQL」MYSQL中的int(11)到底代表什么意思?
有志者,事竟成!如果你在学习数据库,那么本文《「MYSQL」MYSQL中的int(11)到底代表什么意思?》,就很适合你!文章讲解的知识点主要包括MySQL,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~
一、前言
在工作中经常要与mysql打交道,但是对mysql的各个字段类型一直都是一知半解,因此写本文总结记录一番。
二、简介

对于int类型的一些基础知识其实上图已经说的很明白了,在这里想讨论下常用的int(11)代表什么意思,很长时间以来我都以为这代表着限制int的长度为11位,直到有天看到篇文章才明白,11代表的并不是长度,而是字符的显示宽度,在字段类型为int时,无论你显示宽度设置为多少,int类型能存储的最大值和最小值永远都是固定的,这里贴一些原文片段
The number in the parenthesis does not determines the max and min values that can be stored in the integer field. The max and min values that can be stored are always fixed.The display width of the column does not affects the maximum value that can be stored in that column. A column with INT(5) or INT(11) can store the same maximum values. Also, if you have a column INT(20) that does not means that you will be able to store 20 digit values (BIGINT values). The column still will store only till the max values of INT.
那么照文中所说,所以无论怎么设置int类型的显示宽度,int所能存储的最大值和最小值是固定的,那么这个显示宽度到底有什么用呢?
当int字段类型设置为无符号且填充零(UNSIGNED ZEROFILL)时,当数值位数未达到设置的显示宽度时,会在数值前面补充零直到满足设定的显示宽度,为什么会有无符号的限制呢,是因为ZEROFILL属性会隐式地将数值转为无符号型,因此不能存储负的数值。
具体用以下代码解释。
首先创建一张表:
CREATE TABLE int_demo (
id INT(11) NOT NULL AUTO_INCREMENT,
a INT(11) NOT NULL,
b INT(11) UNSIGNED ZEROFILL NOT NULL,
c INT(5) DEFAULT NULL,
d INT(5) UNSIGNED ZEROFILL NOT NULL,
e INT(15) DEFAULT NULL,
PRIMARY KEY (`id`)
)
插入两条数据
INSERT INTO int_demo (a, b, c, d, e) VALUES (1, 1, 1, 1, 1); INSERT INTO int_demo (a, b, c, d, e) VALUES (1234567890, 1234567890, 1234567890, 1234567890, 1234567890);
select * from int_demo;
| id | a | b | c | d | e |
|---|---|---|---|---|---|
| 1 | 1 | 00000000001 | 1 | 00001 | 1 |
| 2 | 1234567890 | 01234567890 | 1234567890 | 1234567890 | 1234567890 |
注释:如果用navicate软件查询出来并不会显示左边的0,但把数据导出时可看到真实的数据,猜测是软件对数据格式进行了处理?
三、结论
从上个例子我们可以得出以下几个结论:
- 如果一个字段设置了无符号和填充零属性,那么无论这个字段存储什么数值,数值的长度都会与设置的显示宽度一致,如上述例子中的字段b,插入数值1显示为00000000001,左边补了10个零直至长度达到11位;
- 设置字段的显示宽度并不限制字段存储值的范围,比如字段d设置为int(5),但是仍然可以存储1234567890这个10位数字;
- 设置的字符宽度只对数值长度不满足宽度时有效,如d字段int(5),插入1时,长度不足5,因此在左边补充4个零直到5位,但是插入1234567890时超过了5位,这时的显示宽度就起不了作用了。
终于介绍完啦!小伙伴们,这篇关于《「MYSQL」MYSQL中的int(11)到底代表什么意思?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布数据库相关知识,快来关注吧!
利用Sqoop将MySQL海量测试数据导入HDFS和HBase
- 上一篇
- 利用Sqoop将MySQL海量测试数据导入HDFS和HBase
- 下一篇
- xmysql: 一行命令从任何mysql数据库生成REST API
-
- 土豪的小松鼠
- 赞 ??,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢up主分享文章内容!
- 2023-05-23 21:39:20
-
- 拼搏的蜡烛
- 好细啊,已收藏,感谢楼主的这篇博文,我会继续支持!
- 2023-05-04 09:05:29
-
- 执着的金毛
- 这篇技术文章真是及时雨啊,太详细了,太给力了,已加入收藏夹了,关注up主了!希望up主能多写数据库相关的文章。
- 2023-04-16 06:02:45
-
- 等待的大地
- 这篇文章内容太及时了,老哥加油!
- 2023-03-15 08:08:20
-
- 数据库 · MySQL | 12小时前 |
- MySQL histogram 怎样用直方图解释选择性估算
- 122浏览 收藏
-
- 数据库 · MySQL | 12小时前 | MySQL · 正则表达式 · mysql regexp_replace 正则替换 pos occurrence match_type
- MySQL REGEXP_REPLACE 怎样只替换指定次数的文本
- 426浏览 收藏
-
- 数据库 · MySQL | 12小时前 |
- MySQL JSON_TABLE 结合 JSON_KEYS 读取动态对象键名
- 368浏览 收藏
-
- 数据库 · MySQL | 12小时前 |
- MySQL multi-valued index 怎样为 JSON 数组建立多值索引
- 139浏览 收藏
-
- 数据库 · MySQL | 12小时前 |
- MySQL named window 怎样复用多个查询的窗口定义
- 226浏览 收藏
-
- 数据库 · MySQL | 12小时前 | MySQL · JSON · 数据库运维 · mysql JSON_MERGE_PATCH JSON null JSON_REMOVE JSON合并
- MySQL JSON_MERGE_PATCH 怎样让 JSON null 删除对象成员
- 287浏览 收藏
-
- 数据库 · MySQL | 12小时前 | MySQL · 窗口函数 ROW_NUMBER PARTITION BY 每组最新记录 MySQL window function
- MySQL window function 怎样用 ROW_NUMBER 取每组最新记录
- 123浏览 收藏
-
- 数据库 · MySQL | 12小时前 |
- MySQL invisible index 唯一索引设为不可见后约束还生效吗
- 335浏览 收藏
-
- 数据库 · MySQL | 12小时前 |
- MySQL invisible index 怎样临时让优化器使用不可见索引
- 345浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 677次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 696次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 740次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 708次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 545次使用
-
- MySQL 明明加了索引,为什么查询还是很慢?先查这 6 个点
- 2026-06-27 374浏览
-
- golang MySQL实现对数据库表存储获取操作示例
- 2022-12-22 499浏览
-
- golang 基于 mysql 简单实现分布式读写锁
- 2023-01-07 384浏览
-
- 详解如何利用GORM实现MySQL事务
- 2023-01-07 184浏览
-
- Go语言实现操作MySQL的基础知识总结
- 2023-01-23 265浏览

