10 个解决方案
#1
trunc(x[,y])
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
#2
使用trunc()函数。
#3
代码请参考:
SELECT TRUNC(15.79,1) "Truncate" FROM DUAL;
Truncate
----------
15.7
SELECT TRUNC(15.79,-1) "Truncate" FROM DUAL;
Truncate
----------
10
#4
--四舍五入
select round(1.66,1) r_num from dual
r_num
-----------
1.7
select round(1.66,0) r_num from dual
r_num
-----------
2
#5
trunc()是直接截断,round()会四舍五入
#6
trunc()是直接截断,round()会四舍五入
#7
trunc(x[,y])
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
#8
这种 .00 就无力了…
#9
可以结贴了
#10
正解,这2个确实不能是数字精确到N位小数,对于整数要精确到小数点后N位没办法实现。
#1
trunc(x[,y])
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
#2
使用trunc()函数。
#3
代码请参考:
SELECT TRUNC(15.79,1) "Truncate" FROM DUAL;
Truncate
----------
15.7
SELECT TRUNC(15.79,-1) "Truncate" FROM DUAL;
Truncate
----------
10
#4
--四舍五入
select round(1.66,1) r_num from dual
r_num
-----------
1.7
select round(1.66,0) r_num from dual
r_num
-----------
2
#5
trunc()是直接截断,round()会四舍五入
#6
trunc()是直接截断,round()会四舍五入
#7
trunc(x[,y])
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
#8
这种 .00 就无力了…
#9
可以结贴了
#10
正解,这2个确实不能是数字精确到N位小数,对于整数要精确到小数点后N位没办法实现。