发新话题
打印

关于SQL的存储过程问题

关于SQL的存储过程问题

  大家帮看看有什么解决方法没有?女朋友着急了呵呵.



使用带输出参数的存储过程
4、定义存储过程,以学生学号作为输入参数,然后返回该学生的平均成绩。
use xscj
go
create procedure find_course1 @num varchar(20)
as
select @num=rtrim(@num)+'%'
select a.姓名,t.课程名 from xs a,xs_kc b ,kc t
where a.学号=b.学号 and b.课程号=t.课程号 and a.学号 like @num


--使用带输出参数的存储过程
--4、定义存储过程,以学生学号作为输入参数,然后返回该学生的平均成绩。
--5、检查指定学生的平均成绩,若>75将输出代码1,否则将返回代码2

TOP

  use xscj
go
/*创建存储过程*/
creater procedure pro_coursel
@num int /*输入参数 ,学号*/
@avgscore int OUTPUT/*OUTPUT关键字,否则视为输入参数,输出参数,平均分, */
as
select @avgscore=avg(score) from table_name
go
/*调用存储过程*/
declare @avg int /*定义变量,用来存放调用存储过程时返回的结果
*/exec pro_coursel @avg OUTPUT, 002
print '------------------------------------'
if@avg>75
print'输出代码1'
else
print'输出代码2'

注:因为你的查询语句涉及多表查询,我不知道你表的结构,就忽约你的多表查询~还有什么不明白加QQ:110977291

TOP

发新话题