IF条件语句

语法:

if_stmt ::=

if_stmt_1 ::=

if_stmt_2 ::=

if_stmt_3 ::=

if_stmt_4 ::=

参数:

boolean_expression 布尔值表达式

<statements> PLOSCAR语句列表

说明:

实际上是在另外一个IF语句的ELSE部分嵌套了一个IF语句,因此需要一个END IF语句给每个嵌套的IF,另外还要一个给父 IF-ELSE 用。

语法分析时都转化为IF…THEN…ELSE [IF…THEN…ELSE…ENDIF] ENDIF

示例:IF条件语句

--  清理环境
drop function func(int);

--创建函数
create or replace function func(n int)
    return varchar(10) as
declare 
    res varchar(10);
begin
    IF n = 0 THEN
        res := 'zero';
    ELSE
        IF n > 0 THEN
            res := 'positive';
        ELSE
            IF n < 0 THEN
                res := 'negative';
            ELSE
                res := 'NULL';
            END IF;
        END IF;
    END IF;
    RETURN res;  
end;

/

select func(0);
FUNC(varchar)      |
-------------------
zero               |
总数目:1


select func(1);
FUNC(varchar)      |
-------------------
positive           |
总数目:1


select func(-1);
FUNC(varchar)      |
-------------------
negative           |
总数目:1

--删除函数
drop function func(int);