日期:2014-05-17  浏览次数:20998 次

1到100存储求和
求助...... 

1-100的存储过程求和方法有哪些? 越多越好...
在PL/SQL上能实现的  
 最简便的应该是while 循环 ,把1-100可以取出来,再进行求和吧...我写了几次,都错了, 麻烦知道的朋友详细写出SQL,
还有不同方法的也多多交流啊。
 

------解决方案--------------------
Create Or Replace Function Number_Sum(Num Number) Return Number As
c_Return Number;
c_Tmp Number;
Begin
c_Return := 0;
c_Tmp := 0;
While c_Tmp <= Num Loop
c_Return := c_Return + c_Tmp;
c_Tmp := c_Tmp + 1;
End Loop;
Return c_Return;
End Number_Sum;


------解决方案--------------------
SQL code
create or replace procedure p_sum(ma in number) is
    vi_sum number(6) := 0;
    vi_n   number(4) := 1;

begin

    while vi_n <= ma
    loop
        vi_n   := vi_n + 1;
        vi_sum := vi_sum + vi_n;
    end loop;
    dbms_output.put_line(vi_sum);
exception
    when others then
        dbms_output.put_line('error');
end;

------解决方案--------------------
探讨
引用:

自增写错了……
SQL code
create or replace procedure p_sum(ma in number) is
vi_sum number(6) := 0;
vi_n number(4) := 1;

begin

while vi_n <= ma
loop
vi_sum := vi_sum + vi_n……