浮点数据类型包括real型、float型、decimal型和numeric型。浮点数据类型用于存储十进制小数。在SQL Server 中浮点数值的数据采用上舍入(Round up)的方式进行存储,所谓上舍入也就是,要舍入的小数部分不论其大小,只要是一个非零的数,就要在该数字的最低有效位上加1,并进行必要的进位。由于浮点数据为近似值,所以并非数据类型范围内的所有数据都能精确地表示。

real型数据的存储大小为4个字节,可精确到小数点后第7位数字。这种数据类型的数据存储范围为从-3.40E+38~-1.18E-38,0和1.18E-38~3.40E+38。 在MSSql中real的同义词是float,用法几乎一样。

float型的数据存储大小为8个字节,可精确到小数点后第15位数字。这种数据类型的数据存储范围为从-1.79E+308~-2.23E-308,0和2.23E+308~1.79E+308。 FLOAT(size,d) 带有浮动小数点的小数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。float型的数据可写成float[(n)]的形式。其中n是1~15之间的整数值,指定float型数据的精度。当n为1~7时,实际上用户定义了一个real型的数据,系统用4个字节存储;当n为8~15时,系统认为它是个float型的数据,用8个字节存储它。这样既增强了数据定义的灵活性,又节省了空间。

decimal数据类型和numeric数据类型的功能完全一样,它们都可以提供小数所需要的实际存储空间,但也有一定的限制,用户可以用2~17个字节来存储数据,取值范围是-1038+1~1038-1。 DECIMAL(size,d) 作为字符串存储的 DOUBLE 类型,允许固定的小数点。在括号中规定最大位数。其中size表示可供存储的值的总位数(不包括小数点),默认值为18;d表示小数点后的位数,默认值为0;参数之间的关系是0≤d≤size。例如:decimal(15,5)表示共有15位数,其中整数10位,小数5位。

若一个数是上舍入数,其绝对值不会减少。如:对3.14159265358979 分别进行2 位和12位舍入,结果为3.15 和3.141592653590。在精度上还是有很大的差别的,所以在创建数据库时一定要对字段的数据类型进行精准的分析,确保在插入数据值的最大精度上不要出现差错这样才不会使数据在运算的过程中出现大的偏差。例如在月底或者年底汇总报表时查询出的数据是小数,在运算完以后的数据也是小数,可是在增加到汇总表里的时候变成整数了,这种情况往往就是数据库中表在建立的时候没有有效的设置浮点型数据的小数点后面精度的问题使其数据发生了上舍入现象。

mysql的real类型_MSSQL数据类型-浮点数据类型 (real、float、decimal、numeric)相关推荐

  1. mysql表date类型长度_mysql中数据类型的长度解释

    11.2. 数值类型 MySQL支持所有标准SQL数值数据类型.这些类型包括严格数值数据类型(INTEGER.SMALLINT.DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT.RE ...

  2. mysql中xml类型_使用 SQLXML 数据类型

    使用 SQLXML 数据类型 适用于数据库 XML 类型的 Java 数据类型 Deepak Vohra 2006 年 6 月 10 日发布 概述 J2EE 开发人员通常需要在关系数据库中存储 XML ...

  3. 修改mysql 视图字段类型_MySQL中的数据类型,列选项,视图

    列的数据类型 整型 类型 取值范围 tinyint -128 - 127 smallint -32768 - 32767(几万) mediumint -8388608 - 8388607(几百万) i ...

  4. Mysql数据库---约束类型_mysql数据库的数据类型及约束

    1.整型 MySQL数据类型 含义(有符号) tinyint(m) 1个字节  范围(-128~127) smallint(m) 2个字节  范围(-32768~32767) mediumint(m) ...

  5. c#和mysql之间的类型_【SqlServer数据类型、C#数据类型、SqlDbType】对应关系及转换...

    // sql server数据类型(如:varchar) // 转换为SqlDbType类型 public static SqlDbType SqlTypeString2SqlType(string ...

  6. java 浮点类型声明_java 浮点数据类型

    Java的浮点类型有两种:float和double.Java的浮点类型有固定的表数范围和字段长度,字段长度和表数范围和机器无关.Java的浮点数遵循IEEE754标准,采用二进制数据的科学计数法来表示 ...

  7. MySQL数据库存储价格金额使用的数据类型中float、double、decimal的区别

    float类型表示单精度浮点数值,double类型表示双精度浮点数值,float和double都是浮点型,而decimal是定点型: MySQL 浮点型和定点型可以用类型名称后加(M,D)来表示,M表 ...

  8. MySQL精选 | 枚举类型ENUM的DDL变更测试

    导读 本文深入介绍枚举类型EUNM和集合类型SET.测试基于InnoDB存储引擎上,对MySQL数据库枚举类型ENUM的字段进行DDL变更操作,是否需要重新创建表呢?对数据库的事务处理有何影响?对数据 ...

  9. mysql 有十进制类型吗_MySQL数据类型

    MySQL之数据类型 MySQL常见的数据类型有数值.日期和时间.字符串 数值 整数类型(精确值) Integer Types (Exact Value) - INTEGER, INT, SMALLI ...

最新文章

  1. Confluence 6 用户目录图例 - 可读写连接 LDAP
  2. 每日一皮:好像有个Bug... 你看到了吗?
  3. 搜索不包含关键词_sem竞价代运营丨做竞价推广,关键词匹配才是重点
  4. php 方法求 的近似值,PHP中的等角近似
  5. Java 类的特性1
  6. Scala 安装(win)
  7. 机器学习之 特征工程
  8. 简单的JSP分页显示
  9. Perl语言学习总结
  10. python3+selenium入门03-操作谷歌浏览器
  11. Linux(Ubuntu 14.04) 罗技(logitech) G29 游戏方向盘数据解析(支持自定义开发)
  12. iv值计算(含qcut细节)
  13. java 获取拼音_Java获取汉字对应的拼音(全拼或首字母)
  14. MTK 修改ro.hardware 获取cpu 和固件版本号方法
  15. WebRTC协议学习之一(WebRTC简介)
  16. java推送微信消息换行_微信公众号开发:回复文本消息换行的三种方式
  17. 小树corexy改voron装前必看
  18. 深入理解Python中的if语句
  19. [转载]Shell十三问(入门与提高)
  20. exfat fat_正确的名称是exFAT还是FAT64?

热门文章

  1. 广州.NET俱乐部简介
  2. 实战演练——保存QQ密码
  3. 王海桑《爷爷是个老头》
  4. java求正方形的周长差_Java 作业 重写正方形周长方法
  5. 【虚幻引擎】UE4源码解析FWorldContent、UWorld、ULevel、UGameInstance、UEngine
  6. 04 创建第一个Qt程序
  7. @Repository注解的作用及含义
  8. 我和滴滴打车司机的那些事
  9. 在Windows phone上用XNA写2D游戏第五季
  10. 快递100接口对接总结