Oracle Number类型小结

NUMBER [ ( p [, s]) ]

p(精度): 1-38
s(小数位数): -84-127

有效位数:从左边第一个不为0的数算起,到末尾数字为止的所有数字,小数点和负号不计。

一、 不指定s和p
      用于表示浮点数,其精度和小数位数都是oracle所能支持的最大值
二、 s=0 即:number(p)
        表示整数,有效位数=p
三、 s>0 又分为两种情况:s<p和s>p
        1、s<p 小数位数小于精度
                有效位数=p;
                小数点前有p-s位;
                小数点后可以任意多,只保留s位
                如:number(5,3) 小数点前最多2位,小数点后可以任意,但只会保留三位,输入12.1234,保存为 12.123;输入123.123,报错,输入1.1,保存为1.100              
        2、s>p 小数位数大于精度,小数点右边补s-p个0
                 只能存放大于0小于1的小数;
                 小数点后紧接着的0的数目为s-p个,否则无法插入;
                 p用来指定小数点后的最大有效数字位数,当然不包括小数点后紧接着的0的个数;
                 s是用来限制小数点后的数字位数,包含小数点后紧接着的0;
                 如:number(3,5) 输入0.001,保存为0.00100 
四、   s<0
        精确到小数点左边s位,并四舍五入,然后检验有效位数是否<=p+|s|
        如:number(5,-3),插入1234.1234,保存结果为1000。
            number(3,-5),插入12345.123,保存结果为0;插入123456,保存为100000。
        

====================================Integer===================================
       integer是number的子类,相当于number(38,0),用来存储整数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值