【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的部分)等。
相关推荐
Random Glow1 小时前
聚簇索引 vs 二级索引:回表、覆盖索引、索引下推
数据库·mysql·性能优化·innodb·1024程序员节·索引优化
要开心吖ZSH2 小时前
一次线上锁风暴复盘:号源表大范围 DELETE 的隐患与分批删除改造
数据库·mysql·行锁·1024程序员节·间隙锁·lockwaittimeout
John_Hui5 小时前
MySQL 进阶知识
数据库·sql·mysql·1024程序员节
Random Glow5 小时前
一条 SQL 从输入到返回,中间经历了什么
数据库·后端·mysql·性能优化·innodb·1024程序员节
何中应5 小时前
MySQL 连接驱动单独下载的两种方式
数据库·mysql·maven
余槐i5 小时前
开虚拟线程后接口反而更慢:JDK 21 synchronized 锁住载体线程的排查
java·spring boot·redis·mysql·性能优化
csdn_aspnet6 小时前
.NETCore EF Core 根据 mysql 数据表按顺序生成简单编号
mysql·.net core·efcore·1024程序员节·sequence·编号
惊讶的猫7 小时前
mysql索引
mysql·1024程序员节
csdn_aspnet7 小时前
.NETCore SqlSuagr 根据 mysql 数据表按顺序生成简单编号
mysql·.netcore·sqlsugar·1024程序员节·sequence·.net8·编号
冰暮流星7 小时前
mysql之索引设计的原则
数据库·mysql·1024程序员节