MySQL 基础教程

MySQL 高级教程

MySQL SQL 语句

MySQL 笔记

MySQL IF 语句用法全解(内置函数或流程控制)

MySQL 内置函数及自定义函数详解 MySQL 内置函数及自定义函数详解


MySQL IF 语句可以用作表达式用,也可以作为流程控制语句;作为表达式时,它类似三目运算符,而作为流程控制语句时,它其实是条件表达式。

IF 表达式

表达式如下:

IF(expr, v1, v2)

类似三目运算符,如果表达式 expr 为真(TRUE),返回值为 v1,反之则返回值为 v2

示例如下:

SELECT id, IF(status >= 1, 1, 0) AS valid FROM post;

如上所述,只要 post 表的 status 字段大于等于 1,查询的返回值为 1,且命名返回字段名为 valid,反之则 0。

IF 流程控制语句

MySQL 的 IF 语句结合 THENELSEIFELSEEND 等关键字作为流程控制语句,IF 实现条件判断,满足不同条件执行不同的操作,语法如下:

IF condition THEN   
   statements;    
[ELSEIF condition THEN    
   statements;]
...
...    
[ELSE 
   statements;]    
END IF;

如上语法,如果 condition 计算结果为 TRUE,则执行 THEN 之后的语句。