Mysql之case,if,ifnull,nullif流程控制函数

一般来说,在写sql语言的时候,我们需要多用用函数,前人验证了千百遍的函数绝壁比自己随便拼凑的sql语句高效!(你不相信吗!请写出一条宇宙第四定律先!天才的你一定不需要前人了!)


首先是case函数!

这个case函数跟java里面的switch 超像

接下来让我们看下我的例子吧

SELECT CASE 3 when  1 THEN '男' WHEN 2 THEN '女' ELSE 'xiaobai' END as result;

case 后面那个是选择  假如是1的话,select出来的就是男,2的话就是女,如果不是1和2的话那就是else 就跟java里面的那个switch里面的default一样的,最后都不是就输出xiaobai,as result 为输出的取一个别名 result,


然后是 if 函数,这个if 函数跟java里面的三目运算类似,

SELECT IF(case1	,case2,case3);
如果case1为true,则返回case2,否则返回case3

同样看下例子:

SELECT IF(1>2	,'yes','no');

假如1>2 为true,返回 ‘yes’ (里面可以是其他函数,获取其他对象), 假如 1>2 为 false 则返回 ‘no’(当然同样在这个地方可以用其他object取代‘no’)


接下来看看 nullif 函数

select nullif(case1,case2);

如果case1 == case2 则返回null  否则返回 case 1


最后我们来看下 ifnull  函数

SELECT IFNULL(NULL,null);

只要两者都是null才返回null

否则则返回有值的那一方,若两者都有值,则返回前者 

比如

SELECT IFNULL(1,null);
则结果为1,



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值