删除十进制值
select cast(val as integer),val from table
我尝试了也没有用的工作请告诉我解决这个问题的方法。
select ROUND(2.9,0) from dual
24 23.8331134259259
31 30.8322222222222
31 30.8321990740741
31 31.1120023148148
31 31.1119791666667
28 28.0590046296296
31 31.1177314814815
4 4.05344907407407
4 4.03957175925926
14 13.7137731481481
5 4.79490740740741
5 4.79490740740741
5 4.79489583333333
5 4.79488425925926
预期产出:
23 23.8331134259259
30 30.8322222222222
30 30.8321990740741
30 31.1120023148148
30 31.1119791666667
28 28.0590046296296
31 31.1177314814815
4 4.05344907407407
4 4.03957175925926
13 13.7137731481481
4 4.79490740740741
4 4.79490740740741
4 4.79489583333333
4 4.79488425925926
答案 0 :(得分:2)
你好试试截断功能
TRUNC( number, [ decimal_places ] )
答案 1 :(得分:2)
您在寻找FLOOR
吗?
FLOOR返回等于或小于n的最大整数。数n总是可以写成整数k和正分数f之和,使得0 <= f <1。 1和n = k + f。 FLOOR的值是整数k。因此,当且仅当n恰好是整数时,FLOOR的值才是n本身。
答案 2 :(得分:1)
只需select FLOOR(2.9,0) from dual