日期:2014-05-17  浏览次数:20826 次

散发贴,一个关于IFNULL的用法问题
我的表是:



然后查询语句是:



我的想法是:理论上应该输出2
也就是order_info_id为2的这个值
但是实际上什么也没查到;

没有查到这个字段的结果
是后面不能加等号吗?
如果不加等号,结果是:


如果不加等号不应该是1,2都输出吗?为什么会这样?

------解决方案--------------------
因为数据类型不一样,不为空时是日期类型,为空时变为整型.你把它改为如果为空就变成某一个日期,这个值就会出来.


------解决方案--------------------
你把语句改成这样,看看结果是什么:


select order_Info_id,set_out_time,IFNULL(set_out_time,2) from order_info