MySQL中的数字数据类型的一个概述

news/2024/10/20 19:05:50/

MySQL中的数字数据类型可以分为几大类,主要包括整数类型、浮点数类型和定点数类型、日期和时间类型,以及二进制类型中涉及数字的部分(如BIT)。下面是对这些类型的一个概述:

### 1. 整数类型

整数类型用于存储没有小数部分的数值。MySQL支持多种整数类型,包括:

- **TINYINT**:占用1个字节的存储空间,有符号的取值范围是-128到127,无符号的取值范围是0到255。

- **SMALLINT**:占用2个字节的存储空间,有符号的取值范围是-32768到32767,无符号的取值范围是0到65535。

- **MEDIUMINT**:占用3个字节的存储空间,有符号的取值范围是-8388608到8388607,无符号的取值范围是0到16777215。

- **INT** 或 **INTEGER**:占用4个字节的存储空间,有符号的取值范围是-2147483648到2147483647,无符号的取值范围是0到4294967295。

- **BIGINT**:占用8个字节的存储空间,有符号的取值范围是-9223372036854775808到9223372036854775807,无符号的取值范围是0到18446744073709551615。

整数类型还可以包含一些可选的属性,如显示宽度(M)、无符号(UNSIGNED)和零填充(ZEROFILL)。但请注意,显示宽度并不影响存储范围或性能,且在MySQL 8.0.17及以后的版本中,整数数据类型的显示宽度属性已被弃用。

### 2. 浮点数类型和定点数类型

浮点数类型用于存储带有小数部分的数值。MySQL支持两种浮点数类型:

- **FLOAT**:单精度浮点数,占用4个字节的存储空间。

- **DOUBLE**:双精度浮点数,占用8个字节的存储空间。

浮点数的精度不是精确的,因为它们以二进制格式存储,可能会引入一些舍入误差。

定点数类型(**DECIMAL**)则提供了一种存储精确数值的方法,适用于需要高精度的场景,如货币计算。DECIMAL类型可以指定总位数(M)和小数位数(D),从而控制精度和范围。

### 3. 日期和时间类型

虽然这些类型不是直接用于存储数字的,但它们在处理与数字相关的日期和时间信息时非常有用。MySQL支持的日期和时间类型包括YEAR、TIME、DATE、DATETIME和TIMESTAMP等。

### 4. 二进制类型中的数字

二进制类型如BIT、BINARY、VARBINARY、BLOB等也可以存储数字,但它们主要用于存储二进制数据,如图片、音频或视频文件等。在这些类型中,BIT类型可以直接存储二进制位(0和1),而BINARY和VARBINARY则用于存储固定长度和可变长度的二进制字符串。BLOB类型则用于存储大量的二进制数据。

### 总结

MySQL提供了丰富的数字数据类型,以满足不同的存储需求。在选择数据类型时,应根据数据的取值范围、精度要求以及存储效率等因素进行综合考虑。


http://www.ppmy.cn/news/1540595.html

相关文章

windows性能调优--基本性能优化

1. 使用任务管理器深入监控 打开任务管理器 我们可以通过按下Ctrl Shift Esc快捷键来打开任务管理器。 或者右键点击任务栏空白处,选择“任务管理器”。 2. 使用资源监视器深入分析 打开资源监视器 3. 清理磁盘空间 使用磁盘清理工具 按下Win R,输入…

直播电商的发展与创新:开源 AI 智能名片 S2B2C 商城小程序的融合机遇

摘要:本文深入探讨了直播电商作为内容电商的最新形式所具有的特点和优势,分析了其在移动通信技术推动下的蓬勃发展态势以及各大平台的布局情况。同时,引入关键词“开源 AI 智能名片 S2B2C 商城小程序源码”,阐述其与直播电商的融合…

JS通过递归函数来剔除树结构特定节点

最近在处理权限类问题过程中,遇到多次需要过滤一下来列表的数据,针对不同用户看到的数据不同。记录一下 我的数据大致是这样的: class UserTree {constructor() {this.userTreeData [// 示例数据{ nodeid: "1", nodename: "R…

Git 提交规范参考

Git 提交规范参考 feat 增加新的业务功能fix 修复业务问题/BUGperf 优化性能style 更改代码风格, 不影响运行结果refactor 重构代码revert 撤销更改test 测试相关, 不涉及业务代码的更改docs 文档和注释相关chore 更新依赖/修改脚手架配置等琐事workflow 工作流改进ci 持续集成…

Java集合(四)--treeset/treemap/章节练习题目/去重原理的解读和应用

文章目录 1.treeset结构2.treemap结构3.集合去重辨析总结4.对于arraylist的练习题目5.对于HashMap的练习题目6.第三点的去重运用7.HashSe练习题目 1.treeset结构 下面的这个就是对于这个treeset结构进行测试的一个程序,在这个里面,add表示的就是对于这个…

YOLOv11改进策略【卷积层】| SAConv 可切换的空洞卷积 二次创新C3k2

一、本文介绍 本文记录的是利用SAConv优化YOLOv11的目标检测网络模型。空洞卷积是一种在不增加参数量和计算量的情况下,通过在卷积核元素之间插入空洞来扩大滤波器视野的技术。并且为了使模型能够适应不同尺度的目标,本文利用SAConv将不同空洞率卷积结果进行结合,来获取更全…

小说漫画系统 fileupload.php 任意文件上传漏洞复现

FOFA搜索语句 "/Public/home/mhjs/jquery.js" 漏洞复现 1.向靶场发送如下数据包 POST /Public/webuploader/0.1.5/server/fileupload.php HTTP/2 Host: xxx.xxx.xx.xx Cookie: PHPSESSID54bc7gac1mgk0l3nm8cv6sek07; uloginid677742617 Cache-Control: max-age0…

基于SpringBoot+Vue+uniapp的在线招聘平台的详细设计和实现

详细视频演示 请联系我获取更详细的演示视频 项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念,提供了一套默认的配置,让开发者可以更专注于业务逻辑而不…