【转】Mysql之case when的三种用法
转自:https://www.2cto.com/database/201709/683378.html
case when 的三种用法:
1. case 字段 when ,字段的具体值。
select a.*, case name when '流浪' then '法师' else '战士' end as '类型' FROM c_20170920 a;
2. case when 字段,这个可以对字段进行取范围。
SELECT a.*, CASE WHEN a.age BETWEEN 0 and 20 THEN '青年' WHEN a.age BETWEEN 20 and 40 THEN '中年' ELSE '非人类' END AS '描述' FROM c_20170920 a;
3. case when 字段1,字段2,可以对多个字段进行替换
SELECT a.*, CASE WHEN a.age BETWEEN 20 and 80 THEN '青年' WHEN a.name ='流浪' THEN '帅气' END AS '描述' FROM c_20170920 a;
这里需要注意的是,如果两个条件都针对一个字段的话且都满足条件,会显示第一个when的值。
比如下面:
SELECT a.*, CASE WHEN a.age BETWEEN 0 and 20 THEN '青年' WHEN a.name ='流浪' THEN '帅气' END AS '描述' FROM c_20170920 a;
__EOF__
本文作者:持之以恒(韧)
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!