Oracle处理小数点后位数、格式化数字、查找指定字符所在位置的几
转载自:http://www.cnblogs.com/toowang/p/3781480.html 1.处理小数点位数的几个oracle函数():1.取四舍五入的几位小数 select round(1.2345,3) from dual;
结果:1.235 2. 保留两位小数,只舍 select trunc(1.2345,2) from dual;
结果:1.23 select trunc(1.2399,2) from dual;
结果:1.23 3.取整数 select ceil(23.33) from dual;
结果:24 返回等于或小于x的最大整数: (向下取整) select floor(23.33) from dual;
结果:23 返回舍入到小数点右边y位的x值:rcund(x,[y]):(向上取整) select round(23.33,1) from dual;
结果:23.3 返回截尾到y位小数的x值:trunc(x,[y]):(向下取整) select trunc(23.88,1) from dual;
结果:23.8 2.格式化数字(to_char()函数)select to_char(1210.73,'9999.9') from dual;---结果:1210.7
select to_char(1210.73,'9,999.99') from dual;---结果:1,210.73
select to_char(1210.73,'$9,999.99') from dual;---结果:$1,210.73
select to_char(21,'000099') from dual;--结果:000021
to_char函数特殊用法 select sysdate from dual;--结果:2017/9/18 14:19:45
--每周第几天
select to_char(sysdate,'d') from dual;--结果:2
--每月第几天
select to_char(sysdate,'dd') from dual;--结果:18
--每年第几天
select to_char(sysdate,'ddd') from dual;--结果:261
--每年第几周
select to_char(sysdate,'ww') from dual;--结果:38
--每年第几月
select to_char(sysdate,'mm') from dual;--结果:09
--每年第几季
select to_char(sysdate,'q') from dual;--结果:3
--年份
select to_char(sysdate,'yyyy') from dual;--结果:2017
3.查找指定字符所在位置(instr()函数)instr函数返回要截取的字符串在源字符串中的位置。 参数说明: 注意: 例子: select instr('abc','a') from dual; -- 返回 1
select instr('abc','bc') from dual; -- 返回 2
select instr('abc abc','a',1,2) from dual; -- 返回 5
select instr('abc','bc',-1,1) from dual; -- 返回 2
select instr('abc','d') from dual; -- 返回 0
注:也可利用此函数来检查String1中是否包含String2,如果返回0表示不包含,否则表示包含。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |