Table:TabA姓名  性别  分数
a       男     82.4
b       男     80
c       女     92.4
e       男     0
.....有10几万条记录,现在要对分数进行四舍五入工作--小数点后的不要了,为了提高速度
本来是整数的过滤掉,如80,0等select * from TabA where 分数....?
----如何实现?!

解决方案 »

  1.   

    分数=trunc(分数) ---> 分数为整数
      

  2.   

    直接用trunc就把后面的去掉了,不能实现四舍五入的功能。应该用round,
    select round(82.4) from dual;
    得到82
    select round(82.5) from dual;
    得到83.也可用先加0.5,再用trunc或floor实现:
    select trunc(82.5+0.5) from dual;
    select floor(82.5+0.5) from dual;
      

  3.   

    谢谢两位,讲得好详细:)我已经完成,用的是round和floor