在数据库db_score中创建一个存储函数,要求该函数能根据给定的学生学号和课程编号返回学生的成绩,如果数据库中没有给定的学生成绩则返回0。
时间: 2024-03-21 14:41:02 浏览: 85
好的,你可以使用以下代码创建这个存储函数:
```
CREATE FUNCTION get_score(stu_id INT, course_id INT) RETURNS INT
BEGIN
DECLARE result INT;
SELECT score INTO result FROM tb_score WHERE student_id = stu_id AND course_id = course_id;
IF result IS NULL THEN
SET result = 0;
END IF;
RETURN result;
END;
```
这个存储函数接收两个整数参数:stu_id和course_id,分别表示学生的学号和课程的编号。它将在tb_score表中查找对应的成绩,如果找到了则将其保存在result变量中,否则将result设置为0。最后,这个函数将返回result的值。
你可以使用类似下面的语句来调用这个函数:
```
SELECT get_score(12345, 1001);
```
其中,12345是学生的学号,1001是课程的编号。
阅读全文