流程控制结构

分支

一、if函数
语法:
    if(表达式1,表达式2,表达式3)
    1成立则返回2,否则返回3
特点:
    可以用在任何位置

二、case语句
语法:
    情况一:类似于switch-case
    case 变量|表达式|字段
    when 值1 then 值1|表达式1;
    when 值2 then 值2|表达式2;
    ...
    else 值n|表达式n;
    end [case](如果是放在begin end中需要加上case,如果放在select后面不需要)

    情况二:类似于多重if
    case 
    when 条件1 then 值1|表达式1;
    when 条件2 then 值2|表达式2;
    ...
    else 值n|表达式n;
    end [case](如果是放在begin end中需要加上case,如果放在select后面不需要)
特点:
    可以作为表达式,嵌套在其他语句中使用,可以放在任何地方,可以放在任何地方;可以作为独立语句去使用,只能放begin end中
    所有条件不满足有ELSE则执行,无ELSE则返回NULL

三、if elseif语句
语法:
    if 条件1 then 语句1;
    elseif 条件2 then 语句2;
    ...
    else 语句n;
    end if;
特点:
    只能用在begin end中!!!!!!!!!!!!!!!

三者比较

            应用场合
if函数      简单双分支
case结构    等值判断 的多分支
if结构      区间判断 的多分支

循环

语法:
    [标签:]WHILE 循环条件DO
        循环体
    END WHILE [标签];

    leave 标签; //像break
    iterate 标签; //像continue
特点:
    只能放在BEGIN END里面
    如果要搭配leave跳转语句,需要使用标签,否则可以不用标签

    [标签:]loop
        循环体
    END loop [标签];

    [标签:]repeat
        循环体
    untile 结束循环的条件
    END repeat [标签];    //像do while