Code Bye

关于 mysql 的 if 查询

 

我写了这么一条SQL 如果字段中的值为0,则返回空(‘’),现在返回的却是 (null)
select if(YUSUAN1=””0″”,””””,YUSUAN1) AS YUSUAN1 from yusuan_project

改成:select if(YUSUAN1=””0″”,””””,””1″”) AS YUSUAN1 from yusuan_project,返回的是空

请问,这是怎么回事?我要如何才能用第一条SQL返回空??(鄙人初学MYSQL)

5分
可能 YUSUAN1 本身值就是 NULL
试下这个
SELECT IF(YUSUAN1=””0″” OR YUSUAN1 IS NULL,””””,YUSUAN1) AS YUSUAN1 FROM yusuan_project
结果还是跟以前一样的。
  补充:数据库中,YUSUAN1 的值全是0,再次确认过
15分
楼主可以没有意识到数据类型的差别。

0 和 “”0″” 不是一个东西,不相等。

“”0″” 和 “”0 “” 也不是相同的值。

建议楼主按如下给出测试用例。

引用

   参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
   
   1. 你的 create table xxx .. 语句
   2. 你的 insert into xxx … 语句


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于 mysql 的 if 查询