数据库中float,double与decimal的区别

来源:互联网 发布:led通用编辑软件 编辑:程序博客网 时间:2024/06/11 23:43

1.Decimal 数据包含存储在最小有效数上的数据。在 SQL Server中,小数数据使用 decimal 或 numeric 数据类型存储。存储 decimal 或 numeric 数值所需的字节数取决于该数据的数字总数和小数点右边的小数位数。2.decimal(18,4),decimal(19,1),两者能保存的整数位和小数位不同.

create table tb(val1 decimal(18,4) , val2 decimal(19,1))go insert into tb values(1234567890123.1234 , 12345678901234567.1) select * from tb drop table tb /*val1                 val2                  -------------------- --------------------- 1234567890123.1234   12345678901234567.1 (所影响的行数为 1 行)*/



精度不同,一个是小数点后面精确4位,一个是精确1位
注意的是decimal(18,4)总长18位,包括1位小数点和4为小数,也就是说18-1-4=13整数位只有13位
decimal(19,1)总长19位,17位整数,1位小数

注意float与double数据类型储存的是近似值,而decimal是字符串

2 0
原创粉丝点击