MYSQL 中使用case when then 判断某字段是否为null,和判断是否为字符或数字时的写法不一样,如果不注意,很容易搞错
错误方法:
CASE columnName WHEN null THEN 0 ELSE columnName END
正确方法:
CASE WHEN columnName is null THEN 0 ELSE columnName END
1.SELECT CASE WHEN min(id) IS NULL THEN 0 ELSE min(id) END AS min_id,
CASE WHEN max(id) IS NULL THEN 0 ELSE max(id) END AS max_id
FROM stat_user WHERE stat_time between 2016102310 and 2016122410
2.select ifnull(min(id),0),ifnull(max(id),0) FROM stat_user WHERE stat_time between 2016102310 and 2016122410
用ifnull这个函数效率会更好
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务