Oracle中保留两位小数

Oracle中保留两位小数在最近的项目开发中 有个业务需求是界面显示的数字需要保留两位小数 目前我想到的解决方法有两种 1 在写 SQL 的时候 直接保留两位小数 2 在 java 代码里面将查询出来的数进行格式化处理 保留两位小数先说第一种方案 在 SQL 中的处理我使用的 oracle 数据库 所以有 3 个函数可以选择 分别是 1 ROUND A B 2 ROUND 函数是会将计算结果进行四舍五入的 如果所需


2019年7月25日更新

在评论中有人提到一个问题,在SQL计算中,比如1/10的结果是0.1,但是实际需要得到的结果是0.10,那么用我上面的那些方法得到的结果只可以是0.1,不可以是0.10,对于这个问题,我去oracle官网的文档查看了一下,可以采用如下的写法得到:

select to_char(a/b,'FM9990.00') AS result from dual; 

这里就是需要注意的一点就是0和9的区别,具体我没找到相关的信息,暂时说一下我的想法,0和9应该都是类似于占位符,你实际除得的结果中的数字一般会替换掉9,但是当你整数部分只有一位且是0的时候,那么你需要在格式化的时候用0来指定格式化的模型,如上文那个.67的样子,小数点后面的值,你可以用0也可以用9来指定模式,用9指定的结果就是你的小数点本来后面几位它就显示几位,如果用0来指代,它在位数不够的情况下会用0去进行占位填充。

格式化官方文档oracle 10g

oracle format models

在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/202031.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 上午8:02
下一篇 2026年3月20日 上午8:02


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号