存储过程任务中要求把传进来的数值参数,如果是小数(比如8.25)
分割成整数部分和小数部分,如(8和0.25)。
请教那位哪位能帮帮我。谢谢!

解决方案 »

  1.   

    运行一下这两个你就明白了SELECT ROUND(9.4) FROM DUALSELECT 9.4-ROUND(9.4) FROM DUAL
      

  2.   

    应该是trunc,round会四舍五入的
      

  3.   

    谢谢指教,不过我找到了FLOOR这个函数,挺好用
      

  4.   

    不能用 FLOOR 因为这个函数返回小于指定数值的最接近的整数,对于正数没有问题,对于负数会有问题的。最好用 TRUNCSQL> SELECT FLOOR(-2.5) FROM DUAL;FLOOR(-2.5)
    -----------
             -3SQL> SELECT TRUNC(-2.5) FROM DUAL;TRUNC(-2.5)
    -----------
             -2