MySQL数据库(29):流程结构 if while
【摘要】
流程结构 if while
if分支
两种基本用法
1、用在select查询中
基本语法
if(条件, 结果为真, 结果为假);
1
mysql> select * from my_st...
流程结构 if while
if分支
两种基本用法
1、用在select查询中
基本语法
if(条件, 结果为真, 结果为假);
- 1
mysql> select * from my_student;
+----+-----------+----------+------+--------+
| id | name | class_id | age | gender |
+----+-----------+----------+------+--------+
| 1 | 刘备 | 1 | 18 | 2 |
| 2 | 李四 | 1 | 19 | 1 |
| 3 | 王五 | NULL | 20 | 2 |
| 4 | 张飞 | NULL | 21 | 1 |
| 5 | 关羽 | NULL | 22 | 2 |
| 6 | 曹操 | 1 | 20 | NULL |
| 10 | 司马懿 | 6 | 26 | 1 |
+----+-----------+----------+------+--------+
mysql> select *, if(age > 20, '符合', '不符合') as result from my_student;
+----+-----------+----------+------+--------+-----------+
| id | name | class_id | age | gender | result |
+----+-----------+----------+------+--------+-----------+
| 1 | 刘备 | 1 | 18 | 2 | 不符合 |
| 2 | 李四 | 1 | 19 | 1 | 不符合 |
| 3 | 王五 | NULL | 20 | 2 | 不符合 |
| 4 | 张飞 | NULL | 21 | 1 | 符合 |
| 5 | 关羽 | NULL | 22 | 2 | 符合 |
| 6 | 曹操 | 1 | 20 | NULL | 不符合 |
| 10 | 司马懿 | 6 | 26 | 1 | 符合 |
+----+-----------+----------+------+--------+-----------+
7 rows in set (0.00 sec)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
2、用在复杂语句块中(函数、存储过程、触发器)
基本语法
if 条件表达式 then
满足条件要执行的语句;
end if;
- 1
- 2
- 3
3、复合语法
基本语法
if 条件表达式 then
满足条件要执行的语句;
else
不满足条件要执行的语句;
end if;
-- 如果有其他分支,嵌套使用
if 条件表达式 then
满足条件要执行的语句;
else
不满足条件要执行的语句;
if 条件表达式 then
满足条件要执行的语句;
else
不满足条件要执行的语句;
end if;
end if;
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
while循环
基本语法
while 条件 do
要循环执行的代码
end while;
- 1
- 2
- 3
结构标识符: 为结构命名
基本语法
标识名字: while 条件 do
要循环执行的代码
end while [标识名字];
- 1
- 2
- 3
mysql中没有continue 和break
- iterate 迭代 以下代码不执行,重新开始循环,相当于continue
- leave 离开 终止循环,相当于break
标识名字: while 条件 do
if 条件判断 then
循环控制
iterate / leave 标识名字;
end if;
循环体
end while [标识名字];
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。
原文链接:pengshiyu.blog.csdn.net/article/details/125268602
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)