• oracle--number


    1. oracle的number类型是oracle的内置类型之一,是oracle的最基础数值数据类型。在9iR2及其以前的版本中只支持一种适合存储数值数据的固有数据类型,在10g以后,才出现了两种新的数值类型,即推出本地浮点数据类型(Native Floating-Point Data Types): BINARY_FLOAT(单精度32位)和BINARY_DOUBLE(双精度64位)。这些新数据类型都是基于IEEE二进制浮点运算标准,ANSI/IEEE Std 754-1985 [IEEE 754],使用这些类型时要加上文字f(BINARY_FLOAT)或者d(BINARY_DOUBLE),比如2.07f、3.000094d

    2.number类型的语法很简单:number(p,s)
    p:精度位,precision,是总有效数据位数,取值范围是38,默认是38,可以用字符*表示38;
    s:小数位,scale,是小数点右边的位数,取值范围是-84~127,默认值取决于p,如果没有指定p,那么s是最大范围,如果只指定了p,那么s=0。

    s>0,精确到小数点右边s位,然后检验有效数位是否<=p;

    s<0,精确到小数点左边s位,然后检验有效数位是否<=p+|s|;

    s==0或者未指定,四舍五入到最近整数 

    当p<s时候,表示数字是绝对值小于1的数字,且从小数点右边开始的前s-p位必须是0,保留s位小数。

    例子:具体数据可参考下表

    Value

    Datatype

    Stored Value

    123.2564

    NUMBER

    123.2564

    1234.9876

    NUMBER(6,2)

    1234.99

    12345.12345

    NUMBER(6,2)

    Error

    1234.9876

    NUMBER(6)

    1235

    12345.345

    NUMBER(5,-2)

    12300

    1234567

    NUMBER(5,-2)

    1234600

    12345678

    NUMBER(5,-2)

    Error

    123456789

    NUMBER(5,-4)

    123460000

    1234567890

    NUMBER(5,-4)

    Error

    12345.58

    NUMBER(*, 1)

    12345.6

    0.1

    NUMBER(4,5)

    Error

    0.01234567

    NUMBER(4,5)

    0.01235

    0.09999

    NUMBER(4,5)

    0.09999

    0.099996

    NUMBER(4,5)

    Error

  • 相关阅读:
    Java面向对象之内部类(匿名内部类)
    Java面向对象之内部类(访问格式)
    Java面向对象之USB接口实例
    Java面向对象之多态(成员访问特点) 入门实例
    Java面向对象之多态(向上、向下转型) 入门实例
    Java面向对象之接口interface 入门实例
    Ansible 的安装
    Windows server 2016安装Docker EE
    Docker-py 的使用
    flask 上传文件
  • 原文地址:https://www.cnblogs.com/yhzh/p/5359264.html
Copyright © 2020-2023  润新知