DECIMAL 类型不同于FLOAT和DECIMAL,其中DECIMAL 实际是以串存放的。DECIMAL 可能的最大取值范围与DOUBLE 一样,但是其有效的取值范围由M 和D 的值决定。如果改变M 而固定D,则其取值范围将随M 的变大而变大。表2 - 7的前三行说明了这一点。如果固定M 而改变D,则其取值范围将随D 的变大而变小(但精度增加)。表2 - 7的后三行说明了这一点。
给定的DECIMAL 类型的取值范围取决于MySQL数据类型的版本。对于MySQL3.23 以前的版本,DECIMAL(M, D) 列的每个值占用M 字节,而符号(如果需要)和小数点包括在M 字节中。因此,类型为DECIMAL(5, 2) 的列,其取值范围为-9.99 到9 9 . 9 9,因为它们覆盖了所有可能的5 个字符的值。
正如MySQL3.23 一样,DECIMAL 值是根据ANSI 规范进行处理的, ANSI 规范规定DECIMAL(M, D) 必须能够表示M 位数字及D 位小数的任何值。
例如, DECIMAL(5, 2) 必须能够表示从-999.99 到999.99 的所有值。而且必须存储符号和小数点,因此自MySQL3.23以来DECIMAL 值占M + 2 个字节。对于DECIMAL(5, 2),“最长”的值(- 9 9 9 . 9 9)需要7个字节。
在正取值范围的一端,不需要正号,因此MySQL数据类型利用它扩充了取值范围,使其超过了ANSI 所规范所要求的取值范围。如DECIMAL(5, 2) 的最大值为9 9 9 9 . 9 9,因为有7 个字节可用。
简而言之,在MySQL3.23 及以后的版本中,DECIMAL(M, D) 的取值范围等于更早版本中的DECIMAL(M + 2, D) 的取值范围。在MySQL数据类型的所有版本中,如果某个DECIMAL 列的D 为0,则不存储小数点。这样做的结果是扩充了列的取值范围,因为过去用来存储小数点的字节现在可用来存放其他数字了。
相关推荐
MySQL中的DECIMAL数据类型用于存储高精度的十进制数,它在数据库设计中尤其重要,因为这种数据类型可以确保精确存储货币和其他需要精确计算的数值。标题和描述提到的"DECIMAL(N,M)"中,N和M是两个关键参数,它们定义...
MySQL数据类型DECIMAL详解: 在数据库应用中,经常需要存储包含小数点的数值,如财务、统计、科学计算等领域。在这些场景下,对数字的精确度和范围有较为严格的要求。为此,MySQL提供了DECIMAL数据类型,它可以精确...
Java 数据类型和 MySql 数据类型对应表 在 Java 编程中,了解 Java 数据类型和 MySql 数据类型的对应关系非常重要。这是因为在 Java 应用程序中,我们经常需要与数据库进行交互,而 MySql 是一种常用的关系数据库...
Java 数据类型和 MySql 数据类型对应一览 在 Java 编程语言中,数据类型是指变量或函数可以持有的值的类型。 MySql 数据库也具有其自己的数据类型,用于存储和管理数据。在本文中,我们将对 Java 数据类型和 MySql ...
通过对MySQL数据类型转换方法的详细介绍,我们可以看到,无论是将数字类型转换为字符串类型还是将字符串类型转换为数字类型,都有多种有效的方法可供选择。理解并掌握这些转换方法有助于我们在日常开发工作中更加...
MySQL 数据类型详解 MySQL 数据类型是指在 MySQL 中存储数据的格式,包括整型、浮点型、定点型、字符串、日期时间型、枚举型等多种类型。下面将对 MySQL 数据类型进行详细的介绍。 整型 MySQL 中的整型包括 ...
### MySQL数据类型全掌握 #### 一、概述 在数据库设计和开发过程中,正确选择数据类型对于确保数据的准确性和优化存储空间至关重要。MySQL作为一款广泛使用的开源关系型数据库管理系统,提供了丰富的数据类型来...
MySQL中存在float,double等非标准数据类型,也有decimal这种标准数据类型。 其区别在于,float,double等非标准类型,在DB中保存的是近似值,而Decimal则以字符串的形式保存数值。 float,double类型是可以存浮点数...
MySQL中的decimal类型是一种用于存储精确数值的类型,它主要用于处理货币、精确计算或者任何需要无误差的数值存储的场景。与FLOAT和DOUBLE等浮点数类型不同,decimal类型以字符串形式存储,确保了数值的精确性,避免...
MySQL数据库系统提供了多种数据类型,其中包括INT、FLOAT、DOUBLE、CHAR以及DECIMAL等。本文将重点探讨DECIMAL数据类型,它是用于存储精确数值的类型,适用于需要进行高精度计算的场景。 DECIMAL类型的主要特点在于...
MySQL 数据类型详解 MySQL 数据类型是 MySQL 数据库中的一种基本概念,它定义了数据在数据库中的存储格式和范围。了解 MySQL 数据类型对于数据库设计和开发至关重要。本文将详细介绍 MySQL 数据类型,包括整数、...
MySQL 数据类型详解 MySQL 数据类型是指在 MySQL 数据库中存储数据的方式,它决定了数据的存储格式、大小和范围。了解 MySQL 数据类型非常重要,因为它直接影响数据库的性能、可维护性和安全性。本篇文章将详细介绍...
Java 和 MySQL 数据类型之间的对比是理解数据库操作和应用程序开发中数据处理的关键。这两种语言的数据类型在功能和使用上都有所不同,尽管它们都用于存储和处理数据,但各自有着特定的适用场景和特点。 首先,Java...
总之,MySQL数据类型的灵活使用对于数据库性能优化至关重要,同时也关系到数据完整性和安全性。在实际应用中,数据库管理员和开发者应当根据实际需求和数据特性,选择最合适的数据类型,以达到存储高效和查询快速的...
MySQL的数据类型包括数值类型(如INT、DECIMAL)、字符串类型(如VARCHAR、TEXT)、日期和时间类型(如DATE、TIMESTAMP)以及二进制类型(如BLOB、VARBINARY)。在Oracle中,我们有类似的数据类型,如NUMBER、...
MySQL 数据类型详细介绍 MySQL 数据类型是 MySQL 中最基本的组成部分,也是 MySQL 的核心组成部分。 MySQL 数据类型主要有六大类,即整型、浮点型、定点数浮点型、字符串、日期时间类型和二进制数据类型。 整型 ...
MySQL 数据类型选择 MySQL 数据类型选择是数据库设计中非常重要的一步,因为不同的数据类型选择对数据库的性能和存储空间都有着很大的影响。在 MySQL 中,选择合适的数据类型可以提高查询效率、降低存储空间占用、...