使用sql语句写一个函数计算一个数列的累计和

如题所述

统计一个班的学生成绩

select student_no,sum(grade) from student group by student_no追问

数列应该怎么弄呢??要做成一个函数,可以通用于各个数列。不是个查询语句

追答

用函数写吧

create function a
returns float

as
declare @grade float
begin

select student_no,@grade=sum(grade) from student group by student_no
retrun @grade
end

追问

那我还想问一下:是叫求一个数列的和,那应该怎么改呢?数列例如:12 34 54 56 2 3 45 76 求12到45的全部数字之和。

追答

alter function a_aa()
returns float
as
begin
declare @a int
declare @sum int
set @a=12
set @sum=0
while @a<=45
begin
set @sum=@sum+@a
set @a=@a+1
end
return @sum
end

执行 select dbo.a_aa()

结果:969

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-16
看你追问的情况,应该是你没把问题说清楚。如果按题目的意思,有个表:A,要统计A里面一个字段 scro的累计和。则可以写 select sum(scro) from A追问

这个我也懂,是要写成函数的!例如有一个数列:23 45 5 6 7 8 95 56叫你现在写出一个函数来计算23到95的全部和!!!

相似回答