使用父ID搜索时如何查询产品


How to Query product when search with parent id?

如何计算此类别中的产品?

表类别

 category_id  
 title 
 lft 
 rght 
 parent 
 level

餐桌产品

 product_id 
 category_id 
 title

数据表类别

|1|Electronics|1|16|0|0
|2|Televisions|2|7|1|1
|3|LCD|3|4|2|2
|4|PLASMA|5|6|2|2
|5|Players|8|15|1|1
|6|Mp3 players|9|10|5|2
|7|CD players|11|12|5|2
|8|DVD players|13|14|5|2
|9|Furniture|17|18|0|0

如果我想查询产品以显示所有我将在表产品中查询

SELECT * from product order by product_id

但是如果我想按家长ID查询,我将如何查询?

我尝试查询

select product.*
from category as node, category as parent, product  
where node.lft between parent.lft and parent.rght   
and node.category_id = product.category_id  
group by parent.title   
order by node.lft

但不符合要求。

如果我愿意搜索电视category_id = 2我想在 2 个相同的示例中显示产品category_id

Example
|1|4|Plasma 1
|2|4|Plasma 2
|3|4|Plasma 3
|4|4|Plasma 4
|5|4|Plasma 5
|6|3|LCD 1
|7|3|LCD 2
|8|3|LCD 3

请帮助我。谢谢你的回答。

https://i.stack.imgur.com/2kxzt.png 表类别中的图像数据

不可能调试它,也不知道你的lftrgth是什么。

但是要获得所需的结果,您可以尝试:

SELECT product.*
from product
LEFT JOIN category as cat 
ON product.category_id = cat.category_id 
WHERE cat.parent = 2