数据库题目:创建一个存储过程p_course_count,用于按照课程名称查询对应课程的选课人数并输出,默认课程为高等数学。
时间: 2024-02-11 08:08:44 浏览: 94
数据库查询的存储过程
好的,以下是创建存储过程p_course_count的SQL语句:
```
CREATE PROCEDURE p_course_count(IN course_name VARCHAR(50))
BEGIN
DECLARE count INT;
IF course_name IS NULL THEN
SET course_name = '高等数学';
END IF;
SELECT COUNT(*) INTO count FROM course_selection WHERE course_name = course_name;
SELECT CONCAT('课程 ', course_name, ' 的选课人数为 ', count) AS result;
END;
```
该存储过程接受一个参数course_name,用于指定要查询的课程名称,默认为高等数学。首先,我们通过DECLARE语句声明一个变量count存储选课人数。然后,使用IF语句判断course_name参数是否为空,如果为空则将其赋值为默认课程名称高等数学。接着,使用SELECT COUNT(*)语句查询选课人数并将其存储到count变量中。最后,使用SELECT语句输出查询结果。
调用该存储过程的语句如下:
```
CALL p_course_count('英语');
```
其中,参数为要查询的课程名称,可以根据需要自行修改。如果不指定参数,则默认查询高等数学的选课人数。
阅读全文