+ -
当前位置:首页 → 问答吧 → 请大家帮帮忙,自己是sql新手。。

请大家帮帮忙,自己是sql新手。。

时间:2011-11-03

来源:互联网

在学生成绩表中建立一个存储过程pro_1,输入学生号时可以查询某个学生的各次数学(课程号为1002)期中成绩,并用一个输出参数@sum输出。
(这题怎么做啊?主要是要用这个变量参数输出?我就被难倒了!)

作者: guo12345chao   发布时间: 2011-11-03

直接由存储过程中的查询记录集输入就行了.

作者: qianjin036a   发布时间: 2011-11-03

如果是求和,用output:
SQL code
create procedure pro_1
(@stuid int,@sum int output)
as
select @sum=isnull(@sum,0)+成绩 from 成绩表 where 学号=@stuid and 课程号='1002'
go
declare @stuid int,@sum int
set @stuid=123
exec pro_1 @stuid,@sum output
select @sum
go

作者: qianjin036a   发布时间: 2011-11-03

举个例子
[code=SQL]Create proc p1(
@stuNo nvarchar(10),
@sum numeric(5,1) output
)
as
select @sum=sum(Score) from 成绩表 where stuNo=@stuNo

go

declare @sum numeric(5,1)
set @stuNo='S001'
exec p1 @stuNo=@stuNo,@sum=@sum output[
select @sum/code]

作者: roy_88   发布时间: 2011-11-03

2楼的做法最后是可以得出一个结果,
感觉怪怪的。可以解释下么?

作者: guo12345chao   发布时间: 2011-11-04