我有两张桌子
Table1 : Categories ,
Columns : id , parent_id , name
Table2 : products ,
Columns : id , product_name , category_id , subcategory_id , sale_wanted
这是详细信息
一个类别可以有多个子类别ID。父ID 0表示它是一个类别和父ID!= 0表示它是一个子类别。现在每个产品都与一个子类别相关。我需要显示与每个类别相关的类别名称和总子类别数。
销售0表示该产品是出售,1表示它是必需的。
现在我需要这个。
1.显示与类别相关的产品待售的每个类别相关的所有类别和子类别数。
答案 0 :(得分:0)
问题是你的结构是递归的。 我想你可以搜索关于间隔表示的更多信息。
答案 1 :(得分:0)
我找到了这个解决方案
select
dc.category_id,
dc.name ,
count(ldc.name) as total
from default_category as dc
inner join default_category as ldc on ldc.parent_id= dc.category_id
inner join(select * from default_products where sale_wanted = 1) as dp on dp.subcategory_id = ldc.category_id
where dc.parent_id = 0
group by dc.category_id
这很有效。