IF函数
语法
如果 expr1 是TRUE,则 IF()的返回值为expr2; 否则返回值则为 expr3。
IF(expr1,expr2,expr3)
样例
-- 简单
SELECT
IF(t.gender = 0, '男', '女') SEX
FROM
t_user t ;
-- 复杂
SELECT
IF(t.gender = 0,
(SELECT NAME FROM gender WHERE CODE = t.gender),
IF(t.gender = 1, '女', '保密')
) SEX
FROM
t_user t ;
IfNULL
语法
假如expr1 为 NULL,则 IFNULL() 的返回值为 expr2; 否则其返回值为 expr1。
IFNULL(expr1,expr2)
例子
SELECT
IFNULL(gender, '3')
FROM
t_user ;
CASE WHEN
语法1
CASE expression
WHEN value1 THEN returnvalue1
WHEN value2 THEN returnvalue2
WHEN value3 THEN returnvalue3
……
ELSE defaultreturnvalue
END
例子
SELECT
(CASE t.gender
WHEN 0 THEN '男'
WHEN 1 THEN '女'
ELSE '保密'
END
) SEX
FROM
t_user t ;
语法2
CASE
WHEN condition1 THEN returnvalue1
WHEN condition2 THEN returnvalue2
WHEN condition3 THEN returnvalue3
……
ELSE defaultreturnvalue
END
例子
SELECT
(CASE
WHEN t.gender = 0 THEN '男'
WHEN t.gender = 1 THEN '女'
ELSE '保密'
END
) SEX
FROM
t_user t ;
标签:CASE,gender,WHEN,expr1,user,MySQL,SELECT
From: https://www.cnblogs.com/saltish/p/16549898.html