SQL中case when语句的用法
(个人学习笔记,欢迎指导!)
用法:1:case 字段名 when 字段值 then 值1 else 值2 end
这一种是之前比较常用的一种方式,相当于是大部分编程语言中的switch case的用法,通过字段名,去匹配字段值,适合字段值比较固定的情况下使用,特点是比较简洁易用。
示例一:
<if test="status != null and status != '' ">
AND STATUS = (
CASE #{status}
WHEN '草稿' THEN 0
WHEN '送审' THEN 1
WHEN '正式' THEN 2
WHEN '驳回' THEN 3
END
)
</if>
示例二:
下面的sql语句就是就是用来判断是好孩子,我们偏爱tom所以我们认为他是好孩子,jack是坏孩子,其他的都是普通孩子
select fname, (
case fname
when 'tom' then '好孩子'
when 'jack' then '坏孩子'
else '普通孩子'
end
) as isgoodchild
from T_person