Decimal

更新时间:2022-08-26 11:51

SQL Server而言,Decimal可用来保存具有小数点而且数值确定的数值,它不像floatreal是用来保存近似值。对于Visual Basic而言,Decimal是其版本5新增的数据类型,目的是满足进行精密数学运算的需求,它是范围最大、最精确的浮点数类型。对于Excel而言,DECIMAL()函数用于按给定基数将数字的文本表示形式转换成十进制数。

用于SQL Server

命名规则

Decimal的命名格式为:

在这里数字指一个或多个数(0,1,…,9)的组合,因而一百万能够被表示为1000000或+100000,数字百分之一(1/100)能够被表示为0.01。值得注意的是,逗号(,)是不允许在一个 Decimal名称中出现的。

数据精度

SQL Server而言,decimal和numeric视为相同的类型,它们可用来保存具有小数点而且数值确定的数值。它们不像float和real是用来保存近似值。此类型的列其声明方式为decima[(p[,s])]或numericl[(p[,s])]。其中p是此数值全部的位数,含小数部分但不包括小数点,s则是小数的位数。p值称为此数值的精确度,例如:decimal(10,3)表示共有7位整数3位小数,此例的精确度为10位。此类型的列可保存的值范围为1038-1到-1038-1之间。其占用存储空间依精确度不同而不同,下表给出Decimal类型变量精确度和占用空间的关系。

如果使用该类型的变量未指定精确度,则系统使用默认的18位精确度,如果未加以指定小数位数的话,系统的默认值为0位小数。SQL Server搭配的前端开发工具(如VBDelphi),其所支持的精确度为28位,如果需要超过28位的精确度的话,可以以命令行的方式执行sqlservr.exe启动SQL Server,并使用/参数即可,在此种状况下,此类型最大的精确度为38。

用于Visual Basic

数据精度

Decimal变量存储为96位(12个字节)无符号的整型形式带符号的整型形式,并除以一个10的幂数。这个变比因子决定了小数点右面的数字位数,其范围从0到28变比因子为0(没有小数位)的情形下,最大的可能值为+/-79,228,162,514,264,337,593,543,950,335。而在有28个小数位的情况下,最大值为+/-7.9228162514264337593543950335,而最小的非零值为+/-0.0000000000000000000000000001。

注意事项

Decimal数据类型只能在Variant中使用,即不能声明一变量为DecimaI的类型。不过可用Cde函数,创建一个子类型为Decimal的Variant

用于Excel

语法结构

语法结构为:

从语法结构可以看出,该函数只有两个必选参数,各参数的作用如下:

注意事项

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}