Categories
1 | Pen | 3
2 | Book | 3
3 | Education | null
4 | Shirt | null
Product
1 | 10.00 | Parker-Pen | the description | 1000 | 1
2 | 35.00 | Dairy | the description | 500 | 2
3 | 9.00 | Dux-Pen | the description | 1000 | 1
4 | 350.00 | GeographyMap | the description | 30 | 3
4 | 250.00 | PoloShirt | the description | 100 | 4
这些是我实际检索其类别ID为3的产品的表。
以下是我用来检索数据的查询
select p.name, c.name
from product p
inner join Categories c on p.Categories_id=c.id
inner join Categories c2 on c2.id=3 or c2.parent=3
它实际上是在多次检索数据。并且还有poloshirt,它不属于类别ID。
您能解释一下问题是什么,以及对产品进行分类的更好方法
答案 0 :(得分:0)
如果只允许一个级别的层次结构,您应该得到这样的查询答案:
select p.name, c.name
from product p
inner join Categories c on p.Categories_id=c.id
where c.id=3 or c.parent=3