顺序结构
程序从上往下顺序执行
分支结构
程序从两条或多条路径中选择一条去执行
IF 函数
功能:实现简单的双分支
语法
IF(表达式1, 表达式2, 表达式3)
执行顺序:如果表达式1成立,则IF函数返回表达式2的值,否则返回表达式3的值
应用:可以应用在任何地方
CASE 结构
情况一:类似于java中的switch语句,一帮用于实现等值判断
语法:
CASE 变量|表达式|字段
WHEN 要判断的值 THEN 返回的值1或语句1;
WHEN 要判断的值 THEN 返回的值2或语句2;
WHEN 要判断的值 THEN 返回的值3或语句3;
...
ELSE 要返回的值n或语句n;
END
情况二:类似于java中的多重IF语句,一般用于实现区间判断
语法
CASE
WHEN 要判断的条件1 THEN 返回的值1或语句1;
WHEN 要判断的条件2 THEN 返回的值2或语句2;
...
ELSE 要返回的值n或语句n;
END
特点:
- 可以作为表达式,嵌套在其他语句中使用,可以放在任何地方,BEGIN END 中或 BEGIN END 的外面;
- 可以作为独立语句去使用,只能放在 BEGIN END 中;
- ELSE 可以省略,并且所有的 WHEN 语句都不满足,则返回null;
IF 结构
实现多重分支
语法
IF 条件1 THEN 语句1;
ELSEIF 条件2 THEN 语句;
...
END IF
特点:指定应用在BEGIN END中。
循环结构
程序在满足一定条件的基础上,重复执行一段代码;其中 iterate 功能似于 continue,leave 功能类似于 break;
WHILE
语法
# 标签可以省略
标签:WHILE 循环条件 do
循环体
END WHILE 标签
LOOP
没有结束条件,可以用 leave来跳出循环
语法
标签:LOOP
循环体
END LOOP 标签
REPEAT
类似于java中的 do while
语法
标签:REPEAT
循环体
UNTIL 结束循环的条件
END REPEAT 标签