SQL的存储过程创建计算1+1/2+1/3+…+1/n

创建计算1+1/2+1/3+…+1/n的存储过程,n由输入参数决定,计算结果由输出参数返回给调用者

create proc test
(
@n int
)
as

declare @total decimal(18,4)
select @total=0.0000
while @n>0
select @total=@total+1.0/@i,@i=@i-1

怎么建立p3呢?


create procedure MySum
@n int,
@sum int output
as
set @sum=0
set @n=100
while @n>0
begin
 set @sum=@sum+@n
 set @n=1/@n-1
end

--invoke
declare @sum int
exec MySum-1,@sum output
select @sum

you should do your homework by yourself!