日期:2014-05-16  浏览次数:20873 次

Mysql中If函数的返回值与参考手册不同
本人安装的是MySQL   5.1.11   beta,windows上的非安装版。

在执行语句   SELECT   IF(0.1,1,0)时,按照参考手册上说的,返回值是0,但是在我的MySql上返回的是1。

不知道是我装的MySQL有问题,还是官方的参考手册有问题。不过本人觉得返回值应该是1才对。恳请高手解答

------解决方案--------------------
如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。

所以按照手册上说的 0.1 <> 0 而且 is not null
所以返回第二个参数。
------解决方案--------------------
非0或者非null的时候表示true