1.顺序结构:程序从上至下依次执行;
2.分支结构:程序从两条或多条路径中选择一条取执行;
3.循环结构:程序满足一定条件的基础上,重复执行一段代码;
1.if函数
实现简单的双分支
语法:
IF(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值。
2. case结构
语法:
case 变量|表达式|字段
when 要判断的值 then 返回的值1;
when 要判断的值 then 返回的值2;
…
else 返回的值n;
end ;
这种情况语句可以放在任何地方
而下面这两种情况只能放在begin end中。
3.if结构
1)实现多重分支,只能够放在begin end中
2)语法
if 条件1 then 语句1;
elseif 条件2 then 语句2;
…
[else 语句n;]
end if;
案例:根据传入的成绩,划分等级
delimiter $
create function f(score int) returns char
begin
if score>=90 then return 'A';
elseif score>=80 then return 'B';
else return 'D';
end if;
end$
select f(89) as 'score'; #输出为B.
1.分类
while, loop,repeat
2.循环控制
iterate 类似于 continue ,结束本次循环,继续下次循环;
leave 类似于break ,跳出当前所在循环;
while
语法
[标签:] while 循环条件 do
循环体;
end while[标签];
示例:批量插入,根据次数向表中传入多条记录
delimiter $
create procedure p(in n int)
begin
declare i int default 1;
label:while i<=n do
insert into booktype values(12+i,'c');
if i>=20 then leave;
end if;
set i=i+1;
end while label;
end$
call p(5)$ #插入五条数据,若插入条数大于20,则只插入20条
loop
语法
[标签:]loop
循环体;
end loop[标签];
repeat
[标签:]repeat
循环体;
until 结束循环的条件;
MySQL复习day01:数据库简介和 DQL数据查询语言
MySQL复习day02:DQL数据查询语言续
MySQL复习day03:DQL数据查询语言完结
MySQL复习day04:DML数据操作语言和DDL数据定义语言
MySQL复习day05:TCL事务控制语言和视图
MySQL复习day06:变量,存储过程
MySQL复习day07:函数
MySQL复习day08:流程控制结构
MySQL复习day09:逻辑架构和引擎,索引详解(explain)
感谢诸君观看,如果感觉有用的话,点个赞吧!