18 MySQL 流程控制

本文详细介绍了MySQL中的流程控制,包括分支语句(if, case)和循环语句(while, loop, repeat)。通过具体的案例分析了如何根据条件控制SQL代码的执行,如会员等级判断和求和运算,帮助读者更好地理解和应用这些语句。" 50962742,442410,GlusterFS与Ceph:分布式文件系统的对比,"['分布式存储', '文件系统', 'Ceph-mon', '一致性哈希', 'Paxos', 'coroutine']
摘要由CSDN通过智能技术生成

MySQL流程控制:根据条件控制SQL代码的执行
1、分支流程语句: if、case 其中case有2种语法形式
2、循环流程语句: while/ loop/ repeat

1.1 分支语句 if
if condition then statement_list;
[elseif condition then statement_list...;]
[else statement_list;]
end if;

根据判断条件 true 执行相应语句:
首先判断if,若成立则执行分支; 不成立则向下执行;
if或elseif都不成立,则执行else;
案例A
查询读者信息表:根据用户余额判断用户的会员等级
要求:根据身份证号查询用户余额:
1、余额>=500 金牌会员;
2、余额>=300 高级会员;
3、余额>=200 普通会员;
4、余额<200 不能借书,显示:余额不足

/* if 示例代码: 定义 level_if() */
delimiter //
create function level_if(cid char(18))
returns varchar(10)
begin
	declare lev varchar(10);
	declare money decimal(7,3);
	select balance into money from readerinfo where card_id=cid;
	if money<200 then set lev='余额不足';
	elseif money<300 then set lev='普通会员';
	elseif money<500 then set lev='高级会员';
	else set lev='金牌会员';
	end if;
	return lev;
end
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值