最近做项目用到过这个方法,感觉还挺好用的,总结一下分享给大家:
select 字段名,字段名,case when 字段值判断 then 结果为 XX
when 字段值判断 then 结果为 XX
when 字段值判断 then 结果为 XX
else 以上条件该字段都不符合,结果为XX,可以写字段,表示为字段值
end(结束) as XX (查询判断结果字段名为XX,不定义 ,字段名为case when..为字段名)
from 表名
以case开头,end结束。
when和then相当于“如果...那么”,else相当于如果以上都不成立,那么就。。
select *, CASE when (`status` ='0' and lose_effect_time_stamp <
(select unix_timestamp(now()))) then 4 else `status` end as status from tableA