您的位置:首页技术文章

oracle中如何保留两位小数

【字号: 日期:2023-03-08 16:57:22浏览:9作者:猪猪
目录
  • oracle保留两位小数
    • round保留两位
    • trunc保留两位
    • 始终保留两位
  • oracle最多保留两位小数-补充
    • 总结

      oracle保留两位小数

      round保留两位

      • round:四舍五入(最多保留两位,没有小数的时候不展示)
       select round(66.667,2) N1 from dual; 

      trunc保留两位

      • trunc:直接截断(最多保留两位,没有小数的时候不展示)
      select trunc(66.667,2) N2 from dual; 

      始终保留两位

      不管有没有小数都是保留两位,替换0.8即可使用。

      select to_char(round(0.8,2),"fm99999999999990.00") from dual 

      oracle最多保留两位小数-补充

      注意,这里是最多保留两位小数,不是保留两位小数

      oracle保留多少位小数的问题已经烂大街了,很多方法直接度娘就有,有的就不说了,下面这个这么简单不知道为什么没有人提出来!

      这个方法在于:最多能保留两位小数,然而如果不用 to_number() 这个方法的话~~看代码和输出把

      select to_char("222.1534","FM9999999999999990.99") from dual

      输出结果:

      222.15

      select to_char("222.0034","FM9999999999999990.99") from dual

      输出结果:

      222.

      select to_number(to_char("222.0034","FM9999999999999990.99")) from dual

      输出结果:

      222

      看到网上很多文章说用 case when ,decode(),trim() 等等,都可以,在于大家怎么用。

      总结

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

      标签: Oracle