oracle数值处理,Oracle学习笔记:数值型处理方法(number)。

Oracle中最重要的数值型就是number,也是oracle中仅有的一种数值类型。

number(prevision,scale);

//prevision表示number类型的精度,取值为1<=prevision<=38,scale表示小数位数,取值为-84<=scale<=127;

//12345.977中,若精确到小数点后两位,数据位12345.98,精度为7。精确到小数点前两位,数据为12300,此时精度为3。

//当scale为正数时,精确到小数后x位,为负数则精确到小数点前x位。

Oracle内置函数:

绝对值abs():

select abs(-111) from dual;//结果为111 四舍五入round(源数值,小数位数):

select round(3.1415926,4) from dual;//结果为3.1416

select round(3456.78,-1) from dual;//结果为34570,精确到小数点前几位

select round(3456.78) from dual;//结果为345678,小数位数为0或者省略取整。 向上取整ceil():返回大于等于参数值的最小整数。

select ceil(23.45) from dual;//结果为24

select ceil(-23.45) from dual;//结果为-23

向下取整floor():返回小于等于参数值的最大整数。

select ceil(23.45) from dual;//结果为22

select ceil(-23.45) from dual;//结果为-24 取模操作mod(除数,被除数):

select mod(5,2) from dual;//结果为1

返回字符正负性sign()函数:

select sign(100) from dual;//参数为正数返回1,负数返回-1,0则返回0。此处返回1。 取平方根sqrt():

select sqrt(4) from dual;//返回为2,若参数为0 ,oracle报异常。 取平方值power(底数,指数):

select power(4,3) from dual;//返回值为64 截取数字trunc(源数值,小数位数):

select trunc(3.14159,4) from dual;//返回值为3.1415,类似于round(),但是不进行四舍五入。

将ASCII码转换为字符chr():

select chr(66) from dual;//返回B。 格式化数值to_char(源数值,格式):

select to_char(12.78,'000.000') from dual;//0是数字为,当相应位置没有内容时,强行添加0,此处返回 012.780。

select to_char(12.78,'999.999') from dual;//9是数字为,当整数部分没有对应内容时,不添加,小数部分添加0,此处返回 12.780。

//0和9可以混合用。

select to_char(4567800,'99,999,990,00') from dual;//逗号是格式符,强制转换成相应格式,此处返回4,567,800.00。

select to_char(12.78,'FM999.999') from dual;//返回值为12.78,屏蔽了后面的没意义0。另外输出的前面没有空格了。

select to_char(12.78,'$999.999') from dual;//$可加在任意位置,输出均为$12.780。

select to_char(12.78,'L999.999') from dual;//$仅是美元符号,L是本国符号,此处输出的是¥12.780。

select to_char(12.78,'999.999C') from dual;//C是另外一种货币符号,此处输出为12.780CNY。

//上面的都可与FM合用,FM需要放在最前面。

select to_char(sysdate,'yyyy-MM-dd hh24:mi:ss') from dual;//此处输出系统准确时间,2013-10-22 15:55:41。

select sysdate from dual;//此处只能输出2013-10-22 00:00:00。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值