当前位置: 首页 > article >正文

数据类型【TINYINT、SMALLINT、INT、BIGINT、decimal(18,2)】表示意思

数据类型占用字节占用位数取值范围有符号INT8 / TINYINT1 字节8 位-128 到 127INT16 / SMALLINT2 字节16 位-32,768 到 32,767INT32 / INT4 字节32 位-21亿 到 21亿INT64 / BIGINT8 字节64 位约 ±922亿亿Q:TINYINT 就是1字节 为什么可以存-128 到127呢?A:你说得非常对TINYINT 确实只占用 1 个字节即 8 个比特位。之所以能存储 -128 到 127 这么“不整齐”的范围是因为计算机在存储有符号整数时采用的是二进制补码Two’s Complement规则而不是我们直觉中的“原码”。这里有三个关键点可以帮你理解8 个比特位的排列组合1 字节 8 位。每一位可以是 0 或 1所以总共能表示的状态数是 2^8 256 种。如果是无符号unsigned类型这 256 个状态全部用来表示正数范围就是 0 到 255。但在有符号signed类型中我们需要表示负数。最左边的那一位最高位被规定为符号位0 开头表示正数。1 开头表示负数。为什么不是 -127 到 127你可能会觉得既然有一位用来做符号了剩下的 7 位表示数值2^7128范围应该是 -127 到 127共 255 个数。这里有两个关键原因导致范围变成了 -128 到 127原因一0 的位置在计算机中0 被视为正数或者说非负数它的二进制是 0000 0000。这意味着正数阵营里0 占用了一个名额。所以正数剩下的名额只有 127 个从 1 到 127。如果不把 0 算在负数里正数那边就比负数多占了一个位置为了平衡负数那边必须多“借”一个位置。原因二补码的“负零”机制核心原因这是最根本的原因。在补码规则中二进制 1000 0000 被定义为 -128而不是 -0。让我们看看具体的对应关系 0111 1111 127 (最大值) 0000 0001 1 0000 0000 0 1111 1111 -1 1000 0001 -127 1000 0000 -128 (最小值)总结因为计算机利用 1000 0000 这个特殊的组合来表示 -128而不是浪费它来表示“负零”所以负数那边能存到 -128而正数那边因为包含了 0最大值只能到 127。套用到 TINYINT (n1)最小值-2^7 -128最大值2^7 - 1 127deciaml (182) 是什么意思DECIMAL(18, 2) 是数据库中一种用于存储精确数值的数据类型常用于需要高精度的场景比如金融领域的金额计算。简单来说它的含义是总共可以存储 18 位数字其中小数点后固定保留 2 位。 参数详解DECIMAL(p, s) 由两个参数定义p (Precision / 精度)代表数字的总位数包括小数点左边整数部分和右边小数部分的所有数字。在你的例子中p 是 18。s (Scale / 标度)代表小数点后可以存储的位数。在你的例子中s 是 2。 以 DECIMAL(18, 2) 为例根据上面的定义我们可以算出它的存储能力总位数18 位。小数位数2 位。整数位数总位数 - 小数位数 18 - 2 16 位。这意味着使用 DECIMAL(18, 2) 的字段最大值9999999999999999.99 (16个9 .99)最小值-9999999999999999.99✨ 主要特点精确存储与 FLOAT 或 DOUBLE 不同DECIMAL 是一种定点数类型它能精确地存储你输入的数值不会因为二进制转换而产生微小的精度误差。例如0.1 0.2 的结果就是精确的 0.3而不是 0.30000000000000004。自动补零如果你插入的数字小数位不足 2 位数据库会自动补零。例如插入 123 会被存储为 123.00。四舍五入如果你插入的数字小数位超过 2 位数据库通常会进行四舍五入。例如插入 1.237 会被存储为 1.24。 适用场景由于其精确性DECIMAL 类型是存储以下数据的理想选择货币金额商品的价格、账户余额、交易流水等。科学数据需要固定精度的实验测量值。税率、利率任何不允许有计算误差的百分比数值。

相关文章:

数据类型【TINYINT、SMALLINT、INT、BIGINT、decimal(18,2)】表示意思

数据类型占用字节占用位数取值范围(有符号)INT8 / TINYINT1 字节8 位-128 到 127INT16 / SMALLINT2 字节16 位-32,768 到 32,767INT32 / INT4 字节32 位-21亿 到 21亿INT64 / BIGINT8 字节64 位约 922亿亿Q:TINYINT 就是1字节 为什么可以存-128 到127呢?…...

喜马拉雅音频下载器终极指南:如何轻松保存VIP和付费专辑

喜马拉雅音频下载器终极指南:如何轻松保存VIP和付费专辑 【免费下载链接】xmly-downloader-qt5 喜马拉雅FM专辑下载器. 支持VIP与付费专辑. 使用GoQt5编写(Not Qt Binding). 项目地址: https://gitcode.com/gh_mirrors/xm/xmly-downloader-qt5 喜马拉雅音频下…...

把友善R2S变成家庭网络中枢:OpenWrt旁路由+Docker部署实战记录

将友善R2S打造为家庭网络中枢:OpenWrt旁路由与Docker实战指南 家里那台巴掌大的友善R2S开发板,自从刷入OpenWrt后就一直默默充当着主路由的角色。直到上个月宽带升级时,我突然意识到这个双千兆小钢炮的潜力远未被充分挖掘——它完全能成为集智…...

全网小说下载终极指南:novel-downloader 轻松保存你的阅读时光

全网小说下载终极指南:novel-downloader 轻松保存你的阅读时光 【免费下载链接】novel-downloader 一个可扩展的通用型小说下载器。 项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader 在信息飞速变化的时代,你是否有过这样的困扰&a…...

终极指南:如何用Legacy-iOS-Kit让你的旧iPhone/iPad重获新生

终极指南:如何用Legacy-iOS-Kit让你的旧iPhone/iPad重获新生 【免费下载链接】Legacy-iOS-Kit An all-in-one tool to restore/downgrade, save SHSH blobs, jailbreak legacy iOS devices, and more 项目地址: https://gitcode.com/gh_mirrors/le/Legacy-iOS-Kit…...

告别歌词烦恼:这款免费工具让你轻松获取网易云和QQ音乐LRC歌词

告别歌词烦恼:这款免费工具让你轻松获取网易云和QQ音乐LRC歌词 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 还在为找不到匹配的歌词而烦恼吗?听…...

5步掌握MuseTalk:AI唇形同步技术实战指南与高级技巧

5步掌握MuseTalk:AI唇形同步技术实战指南与高级技巧 【免费下载链接】MuseTalk MuseTalk: Real-Time High Quality Lip Synchorization with Latent Space Inpainting 项目地址: https://gitcode.com/gh_mirrors/mu/MuseTalk MuseTalk是一款基于潜在空间修复…...

如何轻松实现抖音视频批量下载:专业级免费工具终极指南

如何轻松实现抖音视频批量下载:专业级免费工具终极指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback supp…...

5个步骤快速上手:在foobar2000中使用OpenLyrics打造完美歌词体验

5个步骤快速上手:在foobar2000中使用OpenLyrics打造完美歌词体验 【免费下载链接】foo_openlyrics An open-source lyric display panel for foobar2000 项目地址: https://gitcode.com/gh_mirrors/fo/foo_openlyrics 你是否厌倦了foobar2000中歌词显示功能的…...

终极FanControl风扇控制指南:免费解决Windows电脑散热与噪音难题

终极FanControl风扇控制指南:免费解决Windows电脑散热与噪音难题 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_T…...

3个关键步骤:在Windows上轻松安装APK文件的终极解决方案

3个关键步骤:在Windows上轻松安装APK文件的终极解决方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经想过,在Windows电脑上直接安…...

观测大模型API用量与成本对于持续运营项目的重要性

观测大模型API用量与成本对于持续运营项目的重要性 1. 长期调用场景下的成本挑战 在持续运营的项目中,大模型API调用往往不是一次性行为,而是随着用户增长和功能迭代呈现长期累积的趋势。这种情况下,开发者面临两个核心挑战:一是…...

深度观察:武汉广联达培训机构体验情况

行业痛点分析在广联达培训领域,传统培训模式存在诸多问题。调查显示,传统教室集中授课的灌输式教学模式对造价实操学习的适配性极低,核心痛点源于学员的“个性化差异”与实操学习的“实践性本质”。学员的专业背景、专业基础、接受和领悟能力…...

告别‘隐藏菜单’:Qt Creator 在 MacOS 上实现原生风格中文菜单的保姆级配置

告别“隐藏菜单”:Qt Creator在MacOS上实现原生风格中文菜单的保姆级配置 在跨平台应用开发领域,Qt框架因其出色的兼容性和丰富的组件库而备受青睐。然而,当我们将目光聚焦到MacOS平台时,不少开发者都会遇到一个令人困扰的问题——…...

终极Windows媒体播放器指南:为什么MPC-BE是解决你所有视频播放问题的答案

终极Windows媒体播放器指南:为什么MPC-BE是解决你所有视频播放问题的答案 【免费下载链接】MPC-BE MPC-BE – универсальный проигрыватель аудио и видеофайлов для операционной системы Windo…...

3分钟解决Minecraft英文界面困扰:Masa Mods全家桶汉化包完全指南

3分钟解决Minecraft英文界面困扰:Masa Mods全家桶汉化包完全指南 【免费下载链接】masa-mods-chinese 一个masa mods的汉化资源包 项目地址: https://gitcode.com/gh_mirrors/ma/masa-mods-chinese 你是否曾经因为Masa Mods的英文界面而感到困扰?…...

Mac新机开箱必做:5分钟搞定Java开发环境(M1/M2芯片通用,JDK11+IntelliJ IDEA配置)

Mac新机开箱必做:5分钟搞定Java开发环境(M1/M2芯片通用,JDK11IntelliJ IDEA配置) 刚拿到新款MacBook的开发者们,尤其是搭载Apple Silicon芯片的机型,往往迫不及待想开始编码。但配置开发环境这个看似简单的…...

游戏化编程学习新范式:告别枯燥代码,开启冒险旅程

游戏化编程学习新范式:告别枯燥代码,开启冒险旅程 【免费下载链接】codecombat Game for learning how to code. 项目地址: https://gitcode.com/gh_mirrors/co/codecombat 你是否曾经面对屏幕上的代码感到迷茫,那些抽象的逻辑和冰冷的…...

惠普OMEN游戏本终极优化指南:如何用OmenSuperHub免费提升性能与散热效率

惠普OMEN游戏本终极优化指南:如何用OmenSuperHub免费提升性能与散热效率 【免费下载链接】OmenSuperHub 使用 WMI BIOS控制性能和风扇速度,自动解除DB功耗限制。 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 惠普OMEN游戏本性能优…...

【全网最详细】JDK8下载安装图文教程 | Java8环境变量配置指南

JDK8是Oracle在2014年发布的Java开发工具包版本,至今仍然是使用最广泛的Java版本。如果你需要维护老项目、学习Java基础,或者开发对兼容性要求高的应用,掌握JDK8的下载和安装是必须的。 作为Java历史上最重要的版本之一,JDK8引入…...

从ARM7到Cortex-M3:手把手教你移植旧代码时,如何处理模式和特权等级的差异

从ARM7到Cortex-M3:代码移植中的权限模型重构实战 当工程师将代码从ARM7平台迁移到Cortex-M3架构时,最常遇到的"拦路虎"莫过于权限模型的差异。我曾在一个工业控制项目迁移过程中,花了整整三天追踪一个诡异的硬件访问错误&#xf…...

Vatee:高波动市场中的平台执行质量

摘要 在当今全球市场中,高度波动环境时常挑战平台的服务稳定性和执行效率。作为领先的解决方案,Vatee凭借其卓越的技术架构和用户导向设计,在这种剧烈变化的环境中提供了无与伦比的执行质量。本文重点探讨Vatee如何通过创新的系统优化、低延…...

如何使用MIKE IO高效处理水文数据:Python开源库完全实战指南

如何使用MIKE IO高效处理水文数据:Python开源库完全实战指南 【免费下载链接】mikeio Read, write and manipulate dfs0, dfs1, dfs2, dfs3, dfsu and mesh files. 项目地址: https://gitcode.com/gh_mirrors/mi/mikeio MIKE IO是DHI集团维护的专业Python开源…...

思源宋体CN:7种字重开源字体全方位应用指南

思源宋体CN:7种字重开源字体全方位应用指南 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 还在为中文排版设计寻找完美的字体解决方案吗?思源宋体CN这款由Adob…...

全新AOD409 P沟道功率MOSFET晶体管——AOS(美国万代) 集成电路IC 芯片

AOD409 是AOS(Alpha & Omega Semiconductors,美国万代半导体)推出的P沟道功率MOSFET。它基于AOS先进的沟槽MOSFET工艺技术,在紧凑的DPAK(TO-252)表面贴装封装内,集成了60V的漏源击穿电压和-…...

别再手动K帧了!Blender 3.6+ 自动关键帧与插值类型实战避坑指南

Blender 3.6 动画效率革命:自动关键帧与插值类型深度解析 在数字内容创作领域,效率与质量永远是动画师追求的双重目标。Blender 3.6版本带来的动画工具升级,正在悄然改变传统的关键帧工作流程。对于已经掌握基础动画技巧的中级用户而言&#…...

send()函数flags参数全解析:从MSG_DONTWAIT到MSG_MORE,如何选对模式提升网络性能?

send()函数flags参数实战指南:从基础到高阶的性能优化策略 在网络编程的世界里,数据传输的效率往往决定着整个应用的性能天花板。而send()函数作为TCP/IP协议栈中最基础也最关键的接口之一,其flags参数的合理使用常常被开发者忽视。本文将带…...

Element UI单选框样式改造指南:告别默认样式,打造个性化radio和radio-button

Element UI单选框深度定制实战:从样式覆盖到高级交互设计 Element UI作为Vue生态中最受欢迎的组件库之一,其单选框组件el-radio和el-radio-button在表单场景中应用广泛。但当我们面对品牌化设计需求时,默认样式往往显得力不从心。本文将带你突…...

别再只会用默认样式了!uni-app Radio单选框的5个自定义美化技巧(附完整代码)

解锁uni-app Radio组件的设计潜能:5个高级自定义技巧实战指南 在跨端应用开发中,表单组件的美观度直接影响用户的第一印象。uni-app的Radio组件虽然开箱即用,但默认样式往往与精心设计的应用界面格格不入。想象一下:当用户打开你的…...

深入探讨C++标准库容器构造函数与方法设计

在C++编程中,标准模板库(STL)提供了许多容器,如vector,这些容器的设计不仅考虑了功能性,还要确保其接口设计符合C++语言的特性和最佳实践。今天我们将深入探讨vector的构造函数和resize方法的设计哲学及其背后的理由。 构造函数的设计 vector的构造函数有两种形式: v…...