繁体   English   中英

PHP查询过滤多对多MySQL

[英]PHP Query To Filter Many-To-Many MySQL

我有以下查询:

SELECT DISTINCT Names FROM all_uk
INNER JOIN cat_uk ON all_uk.Ref = cat_uk.Ref
INNER JOIN res_uk ON all_uk.Ref = res_uk.Ref
WHERE (cat_uk.Cat_Ref IN (25, 35)) AND (res_uk.Res_Ref = 1) AND (res_uk.Res_Ref = 2)

如您所见, WHERE查询的第一部分是累积的(所有具有25或35引用的内容)。 第二部分是我失败的地方:我想将结果限制为第二类中具有1和2的结果。

选择其中之一(即1或2)会返回结果,但是同时选择它们时,我什么也没得到。

有人可以帮忙吗?

我想你要这个查询

SELECT Names FROM all_uk
INNER JOIN cat_uk ON all_uk.Ref = cat_uk.Ref
INNER JOIN res_uk ON all_uk.Ref = res_uk.Ref
WHERE (cat_uk.Cat_Ref IN (25, 35)) 
GROUP BY Names
HAVING SUM(res_uk.Res_Ref = 1)>0
   AND SUM(res_uk.Res_Ref = 2)>0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM