select IFNULL( 222.0, '' ) = IFNULL('222', '' ) from dual
这个sql的结果是false,因为IFNULL的第二个参数决定了返回的结果值
这样在使用IFNULL比较数值时要注意
- IFNULL(char, int) -> 不是null时, 返回char;null时返回int
- IFNULL(int, char) -> 无论是否为NULL,都返回char
博客指出某SQL结果为false,原因是IFNULL的第二个参数决定返回结果值。使用IFNULL比较数值时需注意,IFNULL(char, int)非null返回char,null返回int;IFNULL(int, char)无论是否为NULL都返回char。
select IFNULL( 222.0, '' ) = IFNULL('222', '' ) from dual
这个sql的结果是false,因为IFNULL的第二个参数决定了返回的结果值
这样在使用IFNULL比较数值时要注意
1922

被折叠的 条评论
为什么被折叠?