DB2四舍五入保留四位小数

sql 复制代码
SELECT CAST(ROUND(column_name,4) AS DECIMAL(10,4)) FROM table_name;

ROUND用于四舍五入,比如1.55555555四舍五入到第四位小数,变成1.55560000.但是后面会变成0,不会截断。要再使用CAST之后才会变成1.5556. DECIMAL(10,4)就用数据库定义的那个长度改造就行。比如数据库是DECIMAL(10,6)保留4位就写DECIMAL(10,4)

(这种功能竟然要两个函数实现吗...会不会有更简单的方法,否则太不智能了)

补充一下DECIMAL(M,N)的含义

DECIMAL(M,N) 中M为不带小数点的总长度,N为小数长度,M-N为整数长度。整数不可超长,小数可超长数据库进行自动截取(最后一位四舍五入),短则自动填充(在数据表里直接看是没有填充的,但是双击字段的值变成可编辑状态可以看到末尾填充了,JAVA从数据库中取数取出来也是填充了的)。

相关推荐
Python私教1 小时前
model中能定义字段声明不存储到数据库吗
数据库·oracle
BestandW1shEs4 小时前
谈谈Mysql的常见基础问题
数据库·mysql
重生之Java开发工程师4 小时前
MySQL中的CAST类型转换函数
数据库·sql·mysql
教练、我想打篮球4 小时前
66 mysql 的 表自增长锁
数据库·mysql
Ljw...4 小时前
表的操作(MySQL)
数据库·mysql·表的操作
哥谭居民00014 小时前
MySQL的权限管理机制--授权表
数据库
wqq_9922502774 小时前
ssm旅游推荐系统的设计与开发
数据库·旅游
难以触及的高度5 小时前
mysql中between and怎么用
数据库·mysql
Jacky(易小天)5 小时前
MongoDB比较查询操作符中英对照表及实例详解
数据库·mongodb·typescript·比较操作符