【发布时间】:2019-12-10 03:11:38
【问题描述】:
我有两个表(类别,产品)如下:
分类表:
cid name parent
1 items Null
2 A 1
3 aa 2
4 ab 2
5 ac 2
6 B 1
7 ba 5
8 bb 5
9 bc 5
10 C 1
11 ca 9
12 cb 9
13 cc 9
产品表:
pid cid pname
1 2 p1
2 3 p2
3 4 p3
4 4 p4
5 5 p5
6 5 p6
在这里,我想获取特定父级的所有父级和子级产品。这里我有cid = 2,然后我需要cid=2 及其子的所有产品。
在这里我尝试了类似的方法,但不确定如何使用此查询加入 product 表:
select cid,
name,
parent
from (select * from categories
order by parent, cid) categories,
(select @pv := '2') initialisation
where find_in_set(parent, @pv) > 0
and @pv := concat(@pv, ',', cid)
更新: 数据库模型
谁能帮帮我? 谢谢你。
【问题讨论】:
-
发布预期的 o/p?
-
我不知道为什么这有否决票。
-
@HimanshuAhuja,我想从产品表中获取特定父类别 ID 的所有父子产品。例如:假设我有
cid=2,那么我需要产品表中的p1,p2,p3,p4,p5,p6 -
从表格定义什么是父母或孩子以及两个表格之间的哪些字段相关,这并不是很明显。例如cid 是类别 ID 还是子 ID?包含所有输出的示例并不能说明太多。
-
@danblack 是
cid
标签: mysql sql select hierarchy hierarchical-data