网站首页 > 文章中心 > 其它

oracle如何取两位

作者:小编 更新时间:2023-09-15 18:08:39 浏览量:287人看过

oracle如何用abs()处理后保留2位

方法一:使用to_char的fm格式

不足之处是,如果数值是0的话,会显示为.00而不是0.00.

解决方式如下:

方法二:使用case when then else end进行各种情况的判断处理

case

when instr(to_char(data.amount), '.') 1 then

data.amount || '.00'

when instr(to_char(data.amount), '.') ◆ 1 = length(data.amount) then

data.amount || '0'

else

end as amount_format

方法三:可以使用Oracle自带的参数设置

另外一个问题是,使用column时,设置生效是session级还是system级,需要注意.

也许某张表的数值列不总是要求所有的地方显示时,都是小数点后两位的格式,此时只能使用session级,但是有个数据库连接会话超时的问题,如果不是使用到system级,不建议使用该方法.

Oracle保留小数点后两位的几种方法

--?使用?to_char?函数转换,转换为字符串

--?四舍五入

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

以上SLQ语句为,

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

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

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

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

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

【返回】数字

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

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章