我正在开发一个有特定要求的项目。我面临着sql查询的问题。我需要为具有特定类别(多个)的产品找到单个行。它应该只返回产品的一个产品ID。请参见下图。
表格图片
根据此表,产品ID 1和2分配给类别3,4和6.我们需要创建sql,它可以找到一个或多个分配了特定类别的产品(如1和3,4) ,6类协会)。类别父关系来自另一个表。它有4级层次结构。请帮忙。
提前致谢。
答案 0 :(得分:0)
如果我正确理解了问题,那就是它的多对多关系表。所以查询应该如下所示:
select *
from product p
inner join product_category pc on p.id = pc.product_id
inner join category c on pc.category_id = c.id
where c.id = 3 AND c.id = 4 AND c.id = 6