`
flyinglife
  • 浏览: 132359 次
社区版块
存档分类
最新评论

>.NUMBER类型细讲

阅读更多

1>.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
.00000123     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
1234.9876     NUMBER(6,2)   1234.99
12345.12345   NUMBER(6,2)   Error (有效位为5+2 > 6)
1234.9876     NUMBER(6)     1235 (s没有表示s=0)
12345.345     NUMBER(5,-2)  12300
1234567       NUMBER(5,-2)  1234600
12345678      NUMBER(5,-2)  Error (有效位为8 > 7)
123456789     NUMBER(5,-4)  123460000
1234567890    NUMBER(5,-4)  Error (有效位为10 > 9)
12345.58      NUMBER(*, 1)  12345.6
0.1           NUMBER(4,5)   Error (0.10000, 有效位为5 > 4)
0.01234567    NUMBER(4,5)   0.01235
0.09999       NUMBER(4,5)   0.09999

 

定点数的精度(p)和刻度(s)遵循以下规则:
        当一个数的整数部分的长度 > p-s 时,Oracle就会报错
        当一个数的小数部分的长度 > s 时,Oracle就会舍入。
        当s(scale)为负数时,Oracle就对小数点左边的s个数字进行舍入。
        当s > p 时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入

分享到:
评论

相关推荐

    实战小项目:糗事百科一个小爬虫

    number"&gt;(.*?)&lt;/i&gt;.*?stats-comments.*?number"&gt;(.*?)&lt;/i&gt;.*?up.*?number hidden"&gt;(.*?)&lt;/span&gt;.*?down.*?number hidden"&gt;(.*?)&lt;/span&gt;',re.S) items=re.findall(pattern,source) number=1 for item in items: ...

    类 java.lang.Number分析

    Java.lang.Number是Java编程语言中的一个抽象基类,它为所有数值类型提供了基础框架。Number类的主要作用是提供一套通用的方法,将表示的数值转换为不同类型的值,如byte、double、float、int、long和short,这在...

    ExtJs4.0 使用心得@1 Ext.util.Format.Number()

    `Ext.util.Format`是ExtJS中一个非常实用的工具类,包含了一系列用于字符串、日期和数值等类型的数据格式化的静态方法。`Number()`方法是其中之一,专门用于处理和格式化数字。在实际开发中,我们经常需要将数字以...

    js中string和number类型互转换技巧(分享)

    1、string–&gt;number string类型 *1 即可变成 number类型 2、number–&gt;string number类型 +’‘ 即可变成 string 类型 [removed] function screenInfo() { var str = '012.8372'; var s = 0; str = str...

    logstash-snmpout:Logstash 的 SNMP 输出

    logstash-snmpout ... # number (optional), default: "162" community =&gt; ... # string (optional), default: "public" oid =&gt; ... # string (required) yamlmibdir =&gt; ... # string (optional) } }

    js基础面试题.html

    &gt; Number.__proto__ === Function.prototype // true Boolean.__proto__ === Function.prototype // true String.__proto__ === Function.prototype // true Object.__proto__ === Function.prototype // true ...

    JSS-Updater:注册后脚本使用JSS API更新iPad设备名称和资产标签信息

    / match / serial_number &lt;mobile&gt; &lt;size&gt;1&lt;/size&gt; &lt;mobile&gt; &lt;id&gt;16&lt;/id&gt; &lt;name&gt;...LKF196&lt;/name&gt; &lt;udid&gt;...ec034b8a2184260c55808f3ddd515dd3d0&lt;/udid&gt; &lt;serial&gt;...LKF196&lt;/serial&gt; &lt;mac&gt;...70:AB:4B:D8...

    JavaScript 参考教程

    Number对象虽然用得不多,但它是JavaScript中的基本类型,提供了诸如MAX_VALUE、MIN_VALUE、NaN等属性,以及toString()等方法。String对象是处理文本数据的主要工具,拥有丰富的属性和方法,如length、charAt()、...

    HTML5文本框类型.pdf

    这些类型包括普通文本框、密码类型文本框、文本类型文本框、Number类型文本框、tel类型文本框、email类型文本框、URL类型文本框等。 HTML5文本框类型的优点在于,它可以根据不同类型的文本框,显示相应的键盘,从而...

    siteswap-generator-cli:基于siteswap-generator软件包的命令行工具

    sitewap-generator-cli 基于命令行工具安装$ npm install -g siteswap-generator-cli用法$ siteswap -balls [ &lt; min&gt; ..] &lt; max&gt; -period [ &lt; min&gt; ..] &lt; max&gt; [-height [ &lt; min&gt; ..] &lt; max&gt; ] [-slice &lt; number&gt; ] ...

    第 04 节_GEE 的数据类型 (String, Number).pdf

    注意,如果字符串包含非数字字符,`ee.Number.parse()`会抛出错误。 总的来说,了解和熟练运用GEE中的String和Number数据类型是进行有效编程的基础。正确地声明和操作这些数据类型可以确保代码的准确性和可维护性,...

    Android代码-PhoneNumber

    PhoneNumber 一个获取号码归属地和其他信息(诈骗、骚扰等)的开源库。支持本地离线(含归属地、骚扰、常用号码)和网络(百度、聚合数据或自定义 API)查询。English 下载 通过 gradle 下载 dependencies { ...

    绘图的小软件FindGraph

    网上找的绘图的小软件Select data series on left panel [Points]. Select menu item &lt;Fit&gt;&lt;Best Function&gt;....Select the number of best fit functions '3' to plot. Select menu item &lt;View&gt;&lt;Fitting log&gt;.

    js库bignumber.js_v9.0.2

    在ECMAScript标准中,没有内置的大数类型,因此在需要高精度计算的场景下,`bignumber.js`这样的库显得尤为重要。在前端开发中,尤其是在涉及金融、科学计算等领域,保证数字的精确性是至关重要的。例如,计算用户...

    bignumber.min.js下载

    bignumber.min.js是一个用于任意精度算术的 JavaScript 库。 众所周知,数字运算的精度问题是一个让人很旦疼的问题,而java中有BigDecimal类对数字精度问题进行处理,经过一番查询,发现前段有一个宝藏精度处理类big...

    GTM232.An.Introduction.to.Number.Theory,.Everest,.G.,.Ward,.T.(数论入门).djvu

    GTM232.An.Introduction.to.Number.Theory,.Everest,.G.,.Ward,.T.(数论入门).djvu

    登记表模板旧表8组.number.numbers

    登记表模板旧表8组.number.numbers

    西门子S7-1200PLC如何使用Slice方式对变量进行寻址?.docx

    Slice 方式的语法表达式为:&lt;Tag&gt;.x&lt;Bit number&gt;、&lt;Tag&gt;.b&lt;BYTE number&gt;、&lt;Tag&gt;.w&lt;WORD number&gt;、&lt;Tag&gt;.d&lt;DWORD number&gt;。 在实际应用中,可以使用 Slice 方式来实现对变量的访问和操作。例如,创建一个 S7-1200 ...

    balzeDs与java数据类型 对照表

    8. Number -&gt; java.lang.Double:ActionScript的Number类型(包含浮点和整数)在Java中通常转换为Double。 9. String -&gt; java.lang.String:字符串类型是兼容的,无需特殊处理。 10. XML -&gt; org.w3c.dom.Document:...

    The Art of Assembly Language Programming

    The 80x86 MOV Instruction&lt;br&gt;4.8 - Some Final Comments on the MOV Instructions&lt;br&gt;&lt;br&gt;4.9 Laboratory Exercises&lt;br&gt;4.9.1 The UCR Standard Library for 80x86 Assembly Language Programmers&lt;br&gt;4.9.2 ...

Global site tag (gtag.js) - Google Analytics