oracle 中round函数
作用:进行四舍五入
语法:ROUND(n, integer) ,n为输入数据可包含有小数点数据,integer为取精度整数,取值为 正整数、零、负整数。
1、当integer为正整数时,如下例子:
SQL> select round(45.923,2) from dual;
ROUND(45.923,2)
---------------
45.92
当integer=2时,取小数点向右2位小数,查看小数点向右第3位小数是否大于5,该例子中判断数字3,若大于5进1,小于5则取舍去。
2、当integer为0时,如下例子:
SQL> select round(45.923,0) from dual;
ROUND(45.923,0)
---------------
46
当integer=0时,取整数,查看小数点向右第1位小数是否大于5,该例子中判断数字9,若大于5进1,小于5则取舍去。
3、当integer为负整数时,如下例子:
SQL> select round(46.923,-1) from dual;
ROUND(46.923,-1)
----------------
50
当integer=负整数时,取小数点向左第1为,该例子中判断数字6,查看小数点向左第1位小数是否大于5,若大于5进1,小于5则取舍去。
4、总结如下integer对照表:1
6
8
.
6
3
7
-3
-2
-1
0
1
2
3
SQL> select round(168.637,-3),round(168.637,-2),round(168.637,-1),round(168.637,0),round(168.637,1),round(168.637,2),round(168.637,3) from dual;
ROUND(168.637,-3) ROUND(168.637,-2) ROUND(168.637,-1) ROUND(168.637,0) ROUND(168.637,1) ROUND(168.637,2) ROUND(168.637,3)
----------------- ----------------- ----------------- ---------------- ---------------- ---------------- ----------------
0 200 170 169 168.6 168.64 168.637
SQL>