最新消息:文章中包含代码时,请遵守代码高亮规范!

【原创】关于MySQL高级查询–case when

PHP Seven 576浏览 0评论

大家都知道Case when的用法,一旦满足了某一个WHEN ,则这一条数据就会退出CASE WHEN,而不再考虑其他CASE ,文章来详细的介绍了case when的用法并举例说明了。就我在项目开发中很多情况就会涉及这种分类型差不同数据的场景,这时case when 就派上大用场了,首先来看个例子:

SELECT * FROM id
WHERE (
(SELECT CASE 1 WHEN type THEN 1 ELSE 0 END FROM t) 
(SELECT CASE 2 WHEN type THEN 1 ELSE 0 END FROM t) 
(SELECT CASE 3 WHEN type THEN 1 ELSE 0 END FROM t) 
(SELECT CASE 4 WHEN type THEN 1 ELSE 0 END FROM t))>=2

就这样简单的语句就可以实现根据类型不同就可以查出不同的数据,case 后面跟上你要的判断的字段,when 后面跟上满足条件,then 查询结果

用CASE WHEN语句可以简化我们平时工作中遇到的很多问题。如性别在表中存的是数字1、2,但是希望查询出来男、女时,可以这样:

select (case Gender when 1 then '男' when 2 then '女' else '其他' end) as Gender from Table1

是不是很强大呢?

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/24082.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者Steven的打赏,我们会更加努力!    如果您想成为作者,请点我

发表我的评论
取消评论

表情