create procedure stc_info(in Tid char(8), in type int, out info varchar(10)) BEGIN IF type = 1 then set info = CAST((select count(Tno) from stc where Tno=Tid group by Tno) AS CHAR); ELSEIF type = 2 then set info = CAST((select AVG(Score) from stc where Tno=Tid group by Tno) AS CHAR); ELSE set type = 'error!!!'; end if; END;
时间: 2024-02-10 20:34:26 浏览: 37
pcb-2020-10-21_STC8G1K08A_stc8g_STC8Goled_pcb
5星 · 资源好评率100%
这个存储过程的语法是正确的,它的作用是根据传入的 Tid 和 type 参数,返回不同的统计信息。如果 type = 1,则返回 Tid 对应的 stc 表中记录的数量;如果 type = 2,则返回 Tid 对应的 stc 表中 Score 字段的平均值;否则返回 'error!!!'。
需要注意的是,在存储过程中,应该使用 BEGIN 和 END 来标记代码块的开始和结束,这样可以避免语法错误。此外,最后一个 ELSE 语句应该将 info 设置为 'error!!!',而不是将 type 设置为 'error!!!'。
阅读全文