好了,我有这个表称为exp_category_posts
这是负责存储的entry_id
之间的关系和所有它相关的cat_id
S,如表中的行(为entry_id
一列,为cat_id
一列)如何在不使用PHP的情况下获得包含结果集?
对于我正在编写的搜索插件,用户可以按类别搜索,并且我想返回所有匹配的条目。
如果我尝试SELECT entry_id FROM exp_category_posts WHERE cat_id = 1 AND cat_id = 2
我希望获得一组分配给两个猫的条目,但是我每次都会得到一个空的结果集。使用OR
不会提供我想要的结果集。
我发现得到我想要的结果的唯一方法是将其打入步骤:
第1步:做每个CAT_ID查询。
第2步:将结果集保存为数组。
步骤3:使用几个in_array()
调用过滤掉不在所有结果集中的条目。
尽管此方法有效,但效率相当低。有什么办法可以通过单个查询来获得我想要的结果,而不是以这种方式进行?
假设'WHERE cat_id = 1'返回1,2,3,4,5,'WHERE cat_id = 2'返回3,4,5,6,7。我想得到的结果是3,4,5。使用OR而不是AND会返回1,2,3,4,5,6,7,这不是我想要的。 – Jazzerus