1)写出创建存储过程stproc1的T-SQL命令,使之可以查询所有学生的学号、姓名和年龄。要求查询结果集的标题为学号、姓名、年龄。 (2)以下T-SQL语句创建存储过程stproc2,查询平均成绩小于80分的学生的学号、平均成绩,结果集标题为学号、平均成绩。完善该语句。 CREATE PROCEDURE stproc2 AS BEGIN SELECT ________ FROM sc GROUP BY 学号 ________________ END (3)以下T-SQL语句创建存储过程stproc3。其中,参数 @cid用于输入课程号,@max_se用于输出最高分,@avg_se用于输出平均分。 CREATE PROC stproc3 @cid char(4), @max_se real OUTPUT, @avg_se real OUTPUT AS BEGIN SELECT @max_se=MAX(成绩), @avg_se=AVG(成绩) FROM sc WHERE 课程号= @cid END 已声明以下变量@m和@a,分别用于接收存储过程stproc3返回的最高分和平均分。写出执行stproc3的T-SQL命令,要求输入课程号1001,查询该门课程的最高分和平均分,并在结果窗格中显示,标题为“最高分”、“平均分”。
时间: 2024-02-12 13:09:05 浏览: 67
查询数据库中所有有成绩的学生的学号和课程号
4星 · 用户满意度95%
1)创建存储过程stproc1的T-SQL命令:
```
CREATE PROCEDURE stproc1
AS
BEGIN
SELECT 学号, 姓名, 年龄
FROM student
END
```
2)完善存储过程stproc2的T-SQL语句:
```
CREATE PROCEDURE stproc2
AS
BEGIN
SELECT 学号, AVG(成绩) AS 平均成绩
FROM sc
GROUP BY 学号
HAVING AVG(成绩) < 80
END
```
3)执行stproc3的T-SQL命令:
```
DECLARE @m real, @a real
EXEC stproc3 '1001', @m OUTPUT, @a OUTPUT
SELECT '最高分' AS 标题, @m AS 最高分, '平均分' AS 标题, @a AS 平均分
```
阅读全文