简单的选择查询返回空结果集?

时间:2013-08-17 22:58:35

标签: mysql sql

我无法解释这一点。我忽略了什么基本的东西导致这不起作用?我有一个简单的表,目前只有一个条目(用于测试目的):

TABLE votes
vote_id | user_id | image_id | vote_type 
----------------------------------------
43      | 8       | 5        | 1

vote_id是主键,user_id& image_id是外键,vote_type是布尔值

这个带有2个WHERE子句的简单选择查询甚至不会返回表中的一个条目:

SELECT * FROM `votes` WHERE 'user_id' = 8 AND 'image_id' = 5;

即使1个WHERE子句也不返回任何内容:

SELECT * FROM `votes` WHERE 'vote_type' = 1;

然而,没有条件的SELECT确实会返回1个结果:

SELECT * FROM `votes`;

注意,我没有收到任何错误,我只是被告知“MySQL返回了一个空结果集”。这是怎么回事?

1 个答案:

答案 0 :(得分:2)

您需要反引号而不是单引号。尝试:

SELECT * FROM `votes` WHERE `user_id` = 8 AND `image_id` = 5;

单引号用于字符串常量。所以字符串“user_id”不等于整数“8”。