数据库创建存储过程showstudent,根据当前系统时间判断当前季节,1-3月为春季,4-6月为夏季,7-9月为秋季,10-12月为冬季, 并显示数据库schooldb中出生于当前季节的学生人数。
时间: 2023-12-25 13:02:55 浏览: 202
以下是创建存储过程的SQL代码:
```
CREATE PROCEDURE showstudent
AS
BEGIN
DECLARE @season VARCHAR(10)
DECLARE @count INT
SET @season = CASE
WHEN MONTH(GETDATE()) IN (1, 2, 3) THEN '春季'
WHEN MONTH(GETDATE()) IN (4, 5, 6) THEN '夏季'
WHEN MONTH(GETDATE()) IN (7, 8, 9) THEN '秋季'
ELSE '冬季'
END
SELECT @count = COUNT(*) FROM schooldb WHERE SUBSTRING(birthday, 6, 2) IN
(CASE
WHEN MONTH(GETDATE()) IN (1, 2, 3) THEN '01,02,03'
WHEN MONTH(GETDATE()) IN (4, 5, 6) THEN '04,05,06'
WHEN MONTH(GETDATE()) IN (7, 8, 9) THEN '07,08,09'
ELSE '10,11,12'
END)
PRINT '当前季节为' + @season + ', 出生于当前季节的学生人数为' + CAST(@count AS VARCHAR)
END
```
该存储过程首先根据当前系统时间判断当前季节,然后查询数据库中出生于当前季节的学生人数,并将结果打印出来。需要注意的是,这里假设数据库中的生日字段birthday为字符串类型,格式为YYYY-MM-DD,因此需要使用SUBSTRING函数来提取月份信息。
阅读全文