1. If 表达式
格式
IF(condition, value_if_true, value_if_false)
condition 的值为 value_if_true,则返回值为 value_if_false
condition 的值为 value_if_true,则返回值为 value_if_false
eg:
SELECT IF(TRUE,1,2);
-> 1
SELECT IF(FALSE,1,2);
-> 2
2. IFNULL 表达式
格式
IFNULL(expr1,expr2)
判断第一个参数expr1是否为NULL:
如果expr1不为空,直接返回expr1;
如果expr1为空,返回第二个参数 expr2
常用在算术表达式计算和组函数中,用来对null值进行转换处理(返回值是数字或者字符串)
eg:
SELECT IFNULL(NULL,"1");
-> 1
SELECT IFNULL("0","1");
-> 0
3. NULLIF 表达式
NULLIF(expr1,expr2)
如果两个参数相等则返回NULL,否则返回第一个参数的值expr1
IF-THEN-ELSE语句
IF condition1 THEN 执行语句
ELSEIF condition2 THEN 执行语句
ELSE 执行语句
END IF;