没有从SQL查询返回结果

时间:2010-06-22 13:28:26

标签: sql

我正在运行以下查询,但即使存在与查询匹配的记录,也不会返回任何行。

SELECT
    * 
FROM
    tblsignup
WHERE
     usr_email='amir@gmail.com'
AND
     (status=1 or status=2)

4 个答案:

答案 0 :(得分:2)

试试这个:

select * from `tblsignup` where `usr_email`='amir@gmail.com'  and  (`status`=1 or `status`=2)

我有一种感觉“status”可能会留给特别的东西。将它更改为“status”可能值得一试。

答案 1 :(得分:2)

尝试围绕status列名称包围括号:

SELECT * 
  FROM tblsignup 
 WHERE usr_email = 'amir@gmail.com'
   AND ([status] = 1
    OR  [status] = 2);

修改 阅读完评论后,为什么不使用:

SELECT * 
  FROM tblsignup 
 WHERE usr_email = 'amir@gmail.com'
   AND [status] > 0;

答案 2 :(得分:2)

你应该尝试简化查询(是的......即使它很简单)

试试这个

  

从tblsignup中选择*

然后

  

从tblsignup中选择*在哪里   usr_email ='amir@gmail.com'

然后

  

tblsignup中选择*   usr_email='amir@gmail.com'和。{   状态> 0

//我知道你不会使用>最后为0,但我们希望通过>消除我们简化的最大错误原因。 0只是为了更容易阅读

告诉我们你从哪里开始获得0行,这可能会导致我们遇到问题,我知道我已经遇到了一个类似于“date”的字段的问题,因为日期已经被MySQL使用了,有趣的MySQL仍然让我使用那个字段名称。

答案 3 :(得分:0)

可能是您的列或表具有区分大小写的排序规则并且输入的地址不同('Amir ...')?由于您的查询是正确的SQL。你可以找到:

EXEC sp_help DatabaseName