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从数据库中取数取出来也是填充了的)。

相关推荐
刃神太酷啦13 分钟前
Redis 进阶核心:持久化 (RDB/AOF)、事务与主从复制全解析----《Hello Redis!》(5)
linux·c语言·数据库·c++·redis·缓存·bootstrap
丁丁点灯o30 分钟前
Oracle中使用外键的场景及不适用外键的情况
数据库·oracle
天天进步201537 分钟前
Pixelle-Video 源码解析 #18:声音克隆功能:参考音频如何影响解说效果?
数据库·音视频
不懂的浪漫1 小时前
ToDesk 连接 Linux 后分辨率过低的解决方法
linux·运维·数据库
布莱克6051 小时前
Redis 详解:从核心数据结构到高可用架构
数据库
冰暮流星2 小时前
mysql之左外连接与右外连接
数据库·sql
jyOverQ2 小时前
MySQL 联合索引怎么用?最左匹配原则到底是什么意思?
数据库·mysql
oradh3 小时前
Oracle enq: US - contention 等待事件总结
数据库·oracle
姚不倒3 小时前
etcd 学习系列(一):从业务需求出发,理解 etcd 是什么
运维·数据库·etcd
susplus3 小时前
【linux应用软件编程】数据库sqlite3
linux·数据库·sqlite