以下查询有什么问题?

时间:2013-03-23 13:48:55

标签: php database mysqli

我试过这个查询

 SELECT *
 FROM `references`
 WHERE
 (`continent_id` IN (2,8) AND `country_id`IN (18) )
   OR `continent_id` IN (2,8)
 LIMIT 0 , 30

这里我要做的是选择那些 country& amp;大陆ID 或仅大陆ID 但以上查询始终只会生成大陆ID 的记录,即(OR continent_id IN(2,8)始终 true

知道这个查询出了什么问题吗?

提前致谢!

2 个答案:

答案 0 :(得分:0)

这是错误的,因为你的第一个条件是好的,那么第二个肯定是正确的。然后是OR,所以只有第二个条件有效。

答案 1 :(得分:0)

试试这个:

SELECT * FROM `references` WHERE `continent_id` IN (2,8) OR `country_id`IN (18)