if()函数:
简介:适用于单条件,if(condition,A,B),如果condition成立,则A,否则B
select username,if(sex=1,'男','女') as sex from user;
以上代码含义:判断sex是否为1,若为1则sex=男,否则sex=女,并输出对应姓名和性别
coalesce()函数
简介:主要用来判断空值,返回参数中第一个非空表达式,coalesce ( expression,value1,value2……)
select name coalesce('苹果汁','橙汁','水') as drink from list;
以上代码含义:前提默认水充足,判断苹果汁库存是否为空,不为空则drink=苹果汁,为空则判断橙汁是否为空,不为空则drink=橙汁,为空则drink=水;输出name和对应的饮品名称。
很多数据库系统都提供了此函数的简化版,由于我常用MySQL,在此记录下MySQL中的简化函数ifnull(expression,value),只是把coalesce()函数的参数简化为2个。
case...when函数
语法1
CASE expression
WHEN value1 THEN returnvalue1
WHEN value2 THEN returnvalue2
WHEN value3 THEN returnvalue3
……
ELSE defaultreturnvalue
END
如果expression=value1,则returnvalue1,若expression=value2,则returnvalue2........,否则返回defaultreturnvalue。此函数在很多编程语言的初阶都有讲,故在此不举例
语法2
CASE
WHEN condition1 THEN returnvalue1
WHEN condition 2 THEN returnvalue2
WHEN condition 3 THEN returnvalue3
……
ELSE defaultreturnvalue
END