mysql 判断 IF 学习总结

1.IFNULL(expr1,expr2)
若expr1 不为 NULL, IFNULL() 的返回值为 expr1;
若expr1 为 NULL, IFNULL() 的返回值为 expr2。

2.IF(expr1,expr2,expr3)
类似三目运算
若expr1是TRUE,IF()的返回值为expr2;
若expr1是FALSE,IF()的返回值为 expr3。
eg:
SELECT
IF(PARA_VALUE='',PARA_VALUE,CONCAT('ossPath', PARA_VALUE)) AS PARA_URL
FROM
SYS_PARAMETER

3.ISNULL(expr)
若expr 为null,则isnull() 的返回值为 1;
若expr 不为null,则isnull() 的返回值为 0。
eg.

WHERE PARA_CODE = 'YLY_NAME'```

4.`NULLIF(expr1,expr2)`
若expr1 = expr2 成立,则返回值为NULL;
若expr1 = expr2 不成立,则返回值为expr1;
eg.
`SELECT NULLIF(12,11)` 结果:12
`SELECT NULLIF(1,1)` 结果:NULL

5.`IS NOT NULL` 和 `IS NOT NULL`
用于判断是否为null的语句
eg.
`SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER IS NOT NULL`

6.` =''` 或者` <>''`
用于判断空字符串
 <> : 不等于
 eg.
 `SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER <>''`

7.对比
```SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER <>''
SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER =''
SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER IS NULL
SELECT COUNT(1) FROM  SYS_PARAMETER WHERE UPDATER IS NOT NULL```
当UPDATER 的值为NULL时,除了第三条语句,有值,其余均为0。

8.CASE




<div class="se-preview-section-delimiter"></div>

如果值为1,则显示男,为2显示女,否则显示保密。

9.CASE THEN
同上换种写法:

CASE
 WHEN SEX = '1' THEN '男'
 WHEN SEX = '2' THEN '女'
 ELSE '其他' END 
 CASE SEX
  WHEN '1' THEN '男'
  WHEN '2' THEN '女’
  ELSE '保密' END

如果值为1,则显示男,为2显示女,否则显示保密。

9.CASE THEN
同上换种写法:

CASE
 WHEN SEX = '1' THEN '男'
 WHEN SEX = '2' THEN '女'
 ELSE '其他' END 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值