MySQL中的case...when...then...else...end...

最近在看代码时,看到case...when这样的sql语句,上网查了一下,然后分享给大家。

#第一种写法
SELECT name,CASE sex #sex表示表中的字段名
	WHEN 1 THEN	 #when表示符合sex=1的条件然后执行then后边的语句,此处表示当sex=1时sex='男'
		'男'
	WHEN 2 THEN	 #此处表示当sex=2时sex='女'
		'女'
	ELSE		 #else表示不满足when里面条件的其他值,此处将表中sex=0替换为sex='其他'
		'其他'
END as 性别		#end表示结束,后边什么也不写查询出来的列名会很长,as表示给该列起别名,可以省略不写
FROM student
#第二种写法
SELECT name,CASE  
	WHEN sex=1 THEN				
		'男'
	WHEN sex=2 THEN				
		'女'
	ELSE							
		'其他'
END as 性别					
FROM student
#第三种写法
SELECT name,CASE sex 
	WHEN sex=1 THEN				
		'男'
	WHEN sex=2 THEN				
		'女'
	ELSE							
		'其他'
END as 性别					
FROM student

 演示效果:

数据库中最初的数据:

 

 end后不加别名的查询结果:

end后加别名的结果: 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值