网站大量收购独家精品文档,联系QQ:2885784924

Decimal与Number(Numeric)的区别.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Decimal与Number(Numeric)的区别

MSSQL中ecimal与Num用于精确存储数值Oracle中ecimal与Number的区别 Number。 一、DECIMAL类型详细 Oracle只是在语法上支持decimal类型,但是在底层实际上它就是number类型,支持decimal类型是为了能把数据从Oracle数据库移到其他数据库中(如DB2等)。 因为decimal在Oracle底层就是number类型,所以就当number类型使用就可以了,如果需要对这种字段类型转为char类型可以用to_char函数对其转换。 decimal类型从根本上说应该是数字类型的,因为oracle内部的数据类型,对于数字只有number类型,都当数字类型进行处理即可。decimal(8,2)代表数字总共8位长度,小数部分是2位。范围是8位,精确到小数点后2位,并四舍五入,即存6位整数,两位小数。也就是最大值可以是999999.99,可存放2位小数。Oracle中,可以使用to_char函数对数字进行转换,使它变成字符类型. 二、NUMBER类型详细 在Oracle中Number类型可以用来存储0,正负定点或者浮点数,可表示的数据范围在 1.0 * 10(-130) —— 9.9...9 * 10(125) {38个9后边带88个0} 的数字,当Oracle中的数学表达式的值=1.0*10(126)时,Oracle就会报错。 Number的数据声明如下: 表示 作用 说明 Number(p, s) 声明一个定点数 p(precision)为精度,s(scale)表示小数点右边的数字个数,精度最大值为38,scale的取值范围为-84到127 Number(p) 声明一个整数 相当于Number(p, 0) Number 声明一个浮点数 其精度为38,要注意的是scale的值没有应用,也就是说scale的指不能简单的理解为0,或者其他的数。 定点数的精度(p)和刻度(s)遵循以下规则: 当一个数的整数部分的长度 p-s 时,Oracle就会报错 当一个数的小数部分的长度 s 时,Oracle就会舍入。 当s(scale)为负数时,Oracle就对小数点左边的s个数字进行舍入。 当s p时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入. NUMBER类型细讲 Oracle number datatype 语法:NUMBER[(precision [, scale])] 简称:precision -- p ????? scale???? -- s NUMBER(p, s) 范围:1 = p =38, -84 = s = 127 保存数据范围:-1.0e-130 = number value 1.0e+126?? ? 保存在机器内部的范围:1 ~ 22 bytes 有效位:从左边第一个不为0的数算起的位数。 s的情况: s 0 ?? 精确到小数点右边s位,并四舍五入。然后检验有效位是否= p。 s 0 ?? 精确到小数点左边s位,并四舍五入。然后检验有效位是否= p + |s|。 s = 0 ?? 此时NUMBER表示整数。 eg: Actual Data?? Specified As? Stored As ---------------------------------------- 123.89?????????? NUMBER???????? 123.89 123.89?????????? NUMBER(3)???? 124 123.89?????????? NUMBER(6,2)?? 123.89 123.89?????????? NUMBER(6,1)?? 123.9 123.89?????????? NUMBER(4,2)?? exceeds precision (有效位为5, 5 4) 123.89?????????? NUMBER(6,-2)? 100 .01234?????????? NUMBER(4,5)?? .01234 (有效位为4) .00012?????????? NUMBER(4,5)?? .00012 .000127?????? NUMBER(4,5)?? .00013 .0000012????? NUMBER(2,7)?? .0000012 ??? NUMBER(2,7)?? .0000012 1.2e-4?????????? NUMBER(2,5)?? 0.00012 1.2e-5?????????? NUMBER(2,5)?? 0.00001 123.2564????? NUMBER??????? 123.2564 12

您可能关注的文档

文档评论(0)

yaobanwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档