定义数值变量X为NUMBERX:=power(10,126)
NUMBER最大值好像power(10,125)可是我需要应用更大的数字,这个时候怎么处理?

解决方案 »

  1.   

    declare
           RunMu number;
           Lmand number;
           N number;
    begin 
          Lmand:=0;
          if lmand=0 then
             select round(power(multiply(anindex),1/count(*)),5) into RunMu   from tp_analyseindex;
          else
             select Lmand * power(multiply(anindex),(Lmand-1)/count(*)) into RunMu   from tp_analyseindex;
          end if;
          dbms_output.put_line(RunMu);
    end;以上是我写的,
    其中:multiply为连乘函数,我已经写好了, 总是提示我数字溢出
      

  2.   

    求N次方的问题,如果数据库不能处理太大的数据,可以改用其它开发工具,像java,.net等,不一非得要用oracle来解决此类问题
      

  3.   

    回bjt_(bjt)
    我是要做BOX-COX转换,而计算过程需要用到联乘,一个上千条记录的表,做联乘计算,要远比那个POWER(10,125) 大得多.
    所以,我要的不是精度,而类型.