mysql数据库 isnull,ifnull,nullif的区别和用法
温馨提示:
本文最后更新于 2017年05月20日,已超过 2,831 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
ISNULL(expr)
如果expr的值为null,则返回1,如果不为null,则返回0;
例如,查找一个订单的状态,如果状态为null则返回1,不为空则返回0
select isnull(status) from orders;
查出的数据
IFNULL(expr1,expr2)
如果expr1不为NULL,则返回expr1; 否则返回expr2。
IFNULL()的返回值是数字或是字符串.
例如查询所有商品,把价格为null的改为0;
select ifnull(goods_price,0) from goods ;
则返回所有商品价格,如果有null的则返回0;
NULLIF(expr1,expr2)
如果expr1和expr2相等,则返回null,否则返回expr1的值
例如
查询商品的促销价格和市场价格是否相等,不相等返回促销价格,相等则返回null
select nullif(goods_price,goods_marketprice) from goods;
当然,一般情况下相等也不返回null,这只是个实例;
正文到此结束
- 本文标签: 数据库
- 本文链接: https://www.php20.cn/article/69
- 版权声明: 本文由仙士可原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权