【mysql】tinyint、int、bigint的区别

目录

          • [1. 说明](#1. 说明)
          • [2. 存储范围](#2. 存储范围)
            • [2.1 TINYINT](#2.1 TINYINT)
            • [2.2 INT(或称为INTEGER)](#2.2 INT(或称为INTEGER))
            • [2.3 BIGINT](#2.3 BIGINT)
          • [3. 存储需求](#3. 存储需求)
          • [4. 适用场景](#4. 适用场景)
1. 说明
  • 1.在MySQL中,TINYINT、INT和BIGINT是三种不同的整数数据类型,它们在存储范围、存储需求和适用场景上有所不同。
  • 2.在选择数据类型时,应根据实际需求和预期的数据范围来选择,避免浪费存储空间或导致数据溢出。
  • 3.默认情况下,整数类型是有符号的(SIGNED),但可以通过添加UNSIGNED关键字来指定无符号类型。
  • 4.默认情况下,整数类型是有符号的(SIGNED),但可以通过添加UNSIGNED关键字来指定无符号类型。
2. 存储范围
2.1 TINYINT
  • 1.有符号(SIGNED)范围:-128 到 127
  • 2.无符号(UNSIGNED)范围:0 到 255
  • 3.TINYINT 类型用于存储非常小的整数值。
2.2 INT(或称为INTEGER)
  • 1.有符号范围:-2,147,483,648 到 2,147,483,647
  • 2.有符号范围:-2,147,483,648 到 2,147,483,647
  • 3.INT 类型是最常用的整数类型,适用于存储大多数整数场景。
2.3 BIGINT
  • 1.有符号范围:-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
  • 2.无符号范围:0 到 18,446,744,073,709,551,615
  • 3.BIGINT 类型用于存储非常大的整数值,适用于需要存储超过INT范围的数据。
3. 存储需求
  • 1.TINYINT:占用1个字节的存储空间。
  • 2.INT:占用4个字节的存储空间。
  • 3.BIGINT:占用8个字节的存储空间。
4. 适用场景
  • 1.TINYINT:适用于存储非常小的整数值,如状态码、小范围的计数器等。
  • 2.INT:适用于存储大多数整数场景,如主键、用户ID、计数器等。
  • 3.BIGINT:适用于需要存储非常大的整数值的场景,如大型计数器、数据库中的唯一标识符(如UUID的部分)等。
相关推荐
城管不管15 小时前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
树码小子15 小时前
MySQL 的事务隔离级别(重点面试题)
数据库·mysql
01_ice15 小时前
MySQL表的约束
数据库·sql·mysql
J_bean1 天前
MySQL 事务是否必须手动开启?
数据库·mysql·数据库事务·自动提交·手动提交
J_bean1 天前
MySQL InnoDB 如何检测死锁、判定死锁、处理死锁
数据库·mysql·死锁·死锁检测·处理死锁·死锁判定
冰暮流星1 天前
mysql之分组查询
数据库·mysql
NiceCloud喜云1 天前
腾讯云国际版云数据库选型:MySQL、Redis 怎么按业务架构来判断
数据库·mysql·腾讯云
ew452181 天前
MySQL JOIN 关联语法、差异、标准用法、经典坑点汇总
数据库·mysql
J_bean2 天前
剖析 MySQL InnoDB 共享行锁 (S) & 排他行锁 (X)
数据库·mysql·共享行锁·s lock·排他行锁·x lock
技术长镜头2 天前
别再只说“走 B+Tree”:一条 SQL 在 InnoDB 中的完整寻址过程
后端·mysql