从SQL查询返回没有结果

问题描述:

我正在运行以下查询,但即使存在与查询匹配的记录也不返回任何行。从SQL查询返回没有结果

SELECT 
    * 
FROM 
    tblsignup 
WHERE 
    usr_email='[email protected]' 
AND 
    (status=1 or status=2) 
+0

该查询有效。你有什么问题? – 2010-06-22 13:29:05

+0

没有输出,结果在数据库中有用 – Aamir 2010-06-22 13:30:59

+4

记录是否存在与'[email protected]'的usr_email和状态1或2? – 2010-06-22 13:36:12

您应通过简化查询尝试(是的,即使这是如此简单)

从尝试这个

选择* tblsignup

然后

从tblsignup选择*,其中 usr_email = '[email protected]'

然后

选择从tblsignup其中 usr_email ='[email protected]”和 状态> 0

*

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

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

试试这个:

select * from `tblsignup` where `usr_email`='[email protected]' and (`status`=1 or `status`=2) 

我有一种感觉, “status” 可能会为一些特别的东西保留。可能值得把它改成“状态”。

+0

没有输出。 – Aamir 2010-06-22 13:34:33

+0

你可以发布一些额外的代码,你使用PHP来运行查询? – Sam152 2010-06-22 13:35:37

围绕status列名称重包装括号:

SELECT * 
    FROM tblsignup 
WHERE usr_email = '[email protected]' 
    AND ([status] = 1 
    OR [status] = 2); 

编辑 阅读您的评论后,为什么不使用:

SELECT * 
    FROM tblsignup 
WHERE usr_email = '[email protected]' 
    AND [status] > 0; 
+0

有三种状态0,1,2。我只想要那些状态为1,2的结果 – Aamir 2010-06-22 13:36:05

+0

没有输出记录有效 – Aamir 2010-06-22 13:47:12

+0

@amir Fayyaz:运行SELECT [status] FROM tblsignup WHERE usr_email ='[email protected]'并告诉我们结果是什么。 – 2010-06-22 13:48:17

但愿这是你的列或表中有案敏感整理和地址输入不同('Amir ...')?由于你的查询是正确的SQL。你可以找到与:

EXEC sp_help DatabaseName