最近遇到一个需求上的问题,运用的数据库是Mysql,涉及到了ifnull函数。
ifnull(expr1,expr2) 如果expr1为null,则显示expr2,否则显示expr1。
举个例子:
SELECT IFNULL(rcar_id,rcar_id1) from wb_busi_gross_rcar where serial_no = '20000019122617250028'
1.如果两个都为null,结果为null。
2.如果为空(mysql区分null与空字符串),不受影响。
所以这里需要把空转换为null,才能进行判断,下面给出一个方法。
SELECT ifnull(case when rcar_id = '' then null else rcar_id end,case when rcar_id1 = '' then null else rcar_id1 end) rcar_id from wb_busi_gross_rcar where serial_no = '20000019122617250028'
记录下来,方便学习,如有错误之处,欢迎指正!