IF函 数
IF(value, t, f)
表示如果value为真,返回t,否则返回f
IFNULL函数
IFNULL(value1, value2)
表示如果value1为空,则返回value2,否则返回value1
CASE WHEN语法
CASE WHEN value1 THEN result ELSE default END
如果value1为真,返回result,否则返回defaultCASE expr WHEN value1 THEN result ELSE default END
如果expr等于value1,返回result,否则返回default- 这两种方式都支持多个
WHEN value THEN result
的形式,当有多个时: 按顺序从前往后判断,当有一个WHEN为真时,后面的WHEN都不执行了,直接结束该CASE语句,到END除结束。继续判断下一行的输入。 else
不写时,不满足任何条件时返回 null
-- 这条查询语句有四行结果
select * from t1;
-- 这个查询返回四行结果,并且结果都相同为`one`
select
case when 1=1 then 'one'
when 2=2 then 'two'
when 3=3 then 'three'
else 'other'
end
from t1;