SQL存储过程


-- 创建存储过程 (无参)
create procedure sp_pro1()

select count(*) from student;

-- 调用存储过程
call sp_pro1();


-- 创建带参数的存储过程
-- 输入参数
create procedure sp_pro2(typeid int)
BEGIN
if typeid=1 THEN
select * from score where cid='01' order by mark desc limit 0,3;
elseif typeid=2 THEN
select * from score where cid='02' order by mark desc limit 0,3;
end if;
end;

call sp_pro2(1);

-- 输出参数
create procedure sp_pro3(typeid int ,out mycount int )
BEGIN
if typeid=1 THEN
select count(*) into mycount from score where cid='01' and mark>90;
elseif typeid=2 THEN
select count(*) into mycount from score where cid='02' and mark>90;
end if;
end;

-- 调用带有输出参数的存储过程的时候 输出参数前要加@
call sp_pro3(1,@mycount);
select @mycount;

 

posted @   呆萌老师  阅读(38)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示