【发布时间】:2013-12-30 19:18:32
【问题描述】:
我有 3 张桌子: 1:产品(ID,名称) 2:product_attributes(attribute_id,名称) 3:product_attributes_selected(product_id,attribute_id,value)
现在我想获取所有具有两个或多个所需属性和值的 product_id 我怎样才能做到这一点?
我试过了,但失败了:
select p.id,p.nazwa_pl
from produkty p,produkty_atrybuty_wartosci paw
where (paw.atrybut_id=2 and paw.wartosc=4)
and (paw.atrybut_id=3 and paw.wartosc=0)
and p.id=paw.produkt_id
group by p.id
【问题讨论】:
-
如果失败,请分享您遇到的错误,如果有的话。如果它失败是因为您没有得到预期的结果,那么您需要共享您输入查询的数据和预期的结果。请尽可能对问题进行描述/透明,这将有助于社区更快、更详细地为您提供帮助。
-
它返回空查询,但是当我在 phpmyadmin 中检查时,至少有 3 个产品匹配此选择
-
正如 T McKeown 在下面的回答中所建议的那样,您的查询中的
and语句的分组可能存在问题。如果他的回答对你有用,那就太好了;否则,您将需要分享您的数据和预期结果,以便其他人找出问题所在。
标签: mysql