oracle如何取小数,oracle小数向上取整

oracle查2个字段相除取2位小数

select round(a/b,2) from table where c='T';

专注于为中小企业提供成都网站制作、做网站、外贸营销网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宜城免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

以上SLQ语句为,

从表table中查询符合c字段值为‘T’的值,

并将值a除以b,得到的结果如果包含小数,则保留两位小数点。

函数round(x[,y])介绍:

【功能】返回四舍五入后的值

【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位。

【返回】数字

与此函数相近的函数是trunc(x[,y]) ,返回截取后的值,用法同round(x[,y]),只是不四舍五入

ORACLE中如何取一个小数的整数部分

select trunc(1.54) --取整

,trunc(1.45) --取整

,floor(1.54) --取整

,floor(1.45) --取整

,round(1.54) --四舍五入

,round(1.45) --四舍五入

,ceil(1.54) --向上取整

,ceil(1.45) --向上取整

from dual

oracle中 取小数部分函数

select 12.23-ceil(12.23) from dual

--结果 -0.77

select substr(12.23-floor(12.23),2,10) from dual;

--这个东西做不到通用没什么价值

--如果

select substr(12.231111111111111-floor(12.231111111111111),2,10) from dual;

--结果不会是231111111111111,而是2311111111

select ltrim(0.55523-floor(0.55523),'0.') from dual;

--这个比较有代表性

--1

select substr(12.25,instr(12.25,'.')+1,length(12.25)) from dual;

--结果 25

--2

select A.a*power(10,length(A.a)-1) from

(select trunc(12.25333,length(12.25333))-trunc(12.25333,0) a from dual) A

--结果 25333

--方法很多的,看你想怎么个实现方法。最好做成函数,通用一点。


网页标题:oracle如何取小数,oracle小数向上取整
文章URL:http://csdahua.cn/article/hoggih.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流