Oracle 提供了以下四个函数用来做四舍五入。

CEIL 向上四舍五入

FLOOR 向下四舍五入

ROUND 四舍五入

TRUNC 去掉小数

下面让我们通过例子来看看它们之间的不同。oracle四舍五入

SELECT 5。5 NUM, CEIL(5。5) CEIL, FLOOR(5。5) FLOOR, ROUND(5。5) ROUND, TRUNC(5。5, 0) TRUNC FROM DUAL

UNION ALL

SELECT 2。5 NUM, CEIL(2。5) CEIL, FLOOR(2。5) FLOOR, ROUND(2。5) ROUND, TRUNC(2。5, 0) TRUNC FROM DUAL

UNION ALL

SELECT 1。6 NUM, CEIL(1。6) CEIL, FLOOR(1。6) FLOOR, ROUND(1。6) ROUND, TRUNC(1。6, 0) TRUNC FROM DUAL

UNION ALL

SELECT 1。1 NUM, CEIL(1。1) CEIL, FLOOR(1。1) FLOOR, ROUND(1。1) ROUND, TRUNC(1。1, 0) TRUNC FROM DUAL

UNION ALL

SELECT 1 NUM, CEIL(1) CEIL, FLOOR(1) FLOOR, ROUND(1) ROUND, TRUNC(1, 0) TRUNC FROM DUAL

UNION ALL

SELECT -1 NUM, CEIL(-1) CEIL, FLOOR(-1) FLOOR, ROUND(-1) ROUND, TRUNC(-1, 0) TRUNC FROM DUAL

UNION ALL

SELECT -1。1 NUM, CEIL(-1。1) CEIL, FLOOR(-1。1) FLOOR, ROUND(-1。1) ROUND, TRUNC(-1。1, 0) TRUNC FROM DUAL

UNION ALL

SELECT -1。6 NUM, CEIL(-1。6) CEIL, FLOOR(-1。6) FLOOR, ROUND(-1。6) ROUND, TRUNC(-1。6, 0) TRUNC FROM DUAL

UNION ALL

SELECT -2。5 NUM, CEIL(-2。5) CEIL, FLOOR(-2。5) FLOOR, ROUND(-2。5) ROUND, TRUNC(-2。5, 0) TRUNC FROM DUAL

UNION ALL

SELECT -5。5 NUM, CEIL(-5。5) CEIL, FLOOR(-5。5) FLOOR, ROUND(-5。5) ROUND, TRUNC(-5。5, 0) TRUNC FROM DUAL;

结果如下:oracle四舍五入

NUM CEIL FLOOR ROUND TRUNC

5。5 6 5 6 5

2。5 3 2 3 2

1。6 2 1 2 1

1。1 2 1 1 1

1 1 1 1 1

-1 -1 -1 -1 -1

-1。1 -1 -2 -1 -1

-1。6 -1 -2 -2 -1

-2。5 -2 -3 -3 -2

-5。5 -5 -6 -6 -5

取整(向下取整):oracle四舍五入

 

复制代码代码如下:

 

select floor(5。534) from dual;

 

select trunc(5。534) from dual;

 

上面两种用法都可以对数字5。534向下取整,结果为5。

 

如果要向上取整 ,得到结果为6,则应该用ceil

 

复制代码代码如下:

 

select ceil(5。534) from dual;

 

四舍五入:

 

复制代码代码如下:

 

SELECT round(5。534) FROM dual;

 

SELECT round(5。534,0) FROM dual;

 

SELECT round(5。534,1) FROM dual;

 

SELECT round(5。534,2) FROM dual;

 

结果分别为 6,  6,  5。5,  5。53

 

保留N位小数(不四舍五入):

 

复制代码代码如下:

 

select trunc(5。534,0) from dual;

 

select trunc(5。534,1) from dual;

 

select trunc(5。534,2) from dual;

 

结果分别是 5,5。5,5。53,其中保留0位小数就相当于直接取整了。

 

数字格式化:

 

复制代码代码如下:

 

select to_char(12345。123,'99999999。9999') from dual;

 

结果为12345。123

 

复制代码代码如下:

 

select to_char(12345。123,'99999999。9900') from dual;

 

小数后第三第四为不足补0,结果为12345。1230

上一篇:dea方法模型介绍
下一篇:香港美国日本韩国站群服务器

生育政策民法典多少条,...

民法典新规定生育政策,...

plsql的oracle解析json字符串函数

Oracle分页查询sql的Oracle分页

oracle创建用户并授权的sql语句

Oracle insert报填写变量variables

matlab四舍五入取整函数

crm成功案例分析crm成功案例

学院教职工体育活动现状调查问卷表

浅谈地质灾害及其分布规律【2498字】

磁流变液可控阻尼离合器的设计+CAD图纸

17岁學生怎么兼职赚钱,...

陶渊明赠答诗与嵇康赠答诗文献综述

股票个别风险和预期收益率的关系

小學生语文學习兴趣的激发与培养【2255字】

浅谈全球价值链视角下传...

關于民办高校人才队伍建...