首页 > 编程笔记 > MySQL笔记 阅读:2

MySQL IF流程控制语句的用法(附带实例)

流程控制语句用来根据条件控制语句的执行。MySQL 中用来构造控制流程的语句有 IF 语句、CASE 语句、LOOP 语句、LEAVE 语句、ITERATE 语句、REPEAT 语句和 WHILE 语句。

每个流程中可能包含一个单独语句,也可能是使用 BEGIN ... END 构造的复合语句,构造可以被嵌套。

IF 语句包含多个条件判断,根据判断的结果为 TRUE 或 FALSE 执行相应的语句,语法格式如下:
IF expr_condition THEN statement_list
   [ELSEIF expr_condition THEN statement_list] ...
   [ELSE statement_list]
END IF
IF 实现了一个基本的条件构造。如果 expr_condition 求值为真(TRUE),则相应的 SQL 语句列表被执行;如果没有 expr_condition 匹配,则 ELSE 子句里的语句列表被执行。

IF 语句都需要使用 END IF 来结束。statement_list 可以包括一个或多个语句。

注意,MySQL 中还有一个 IF() 函数,它不同于这里描述的 IF 语句。

【实例】IF 语句的示例如下:
IF val IS NULL
  THEN SELECT 'val is NULL';
  ELSE SELECT 'val is not NULL';
END IF;
该示例判断 val 值是否为空,如果 val 值为空,则输出字符串“val is NULL”;否则输出字符串“val is not NULL”。

相关文章