我有一个包含3行的表,如cat_id,cat_name,cat_parent。
我的表格如下:
-------------------------------------
|cat_id | cat_name | cat_parent
-------------------------------------
| 1 | Electronics | 0
| 2 | mobile | 1
| 3 | ac | 1
| 4 | Furniture | 0
| 5 | Chair | 4
我想使用MySql单一查询选择父类及其子类。
任何帮助?
答案 0 :(得分:0)
SELECT
A.cat_id as cat_id,
A.cat_name child_id,
A.cat_parent as parent_id,
B.cat_name as parent_name
FROM `cat` A
JOIN `cat` B ON
A.cat_parent=B.cat_id
答案 1 :(得分:0)
试试这个:
select
a.cat_id,
a.cat_name,
a.cat_parent,
b.cat_name as child
from
table as a,
table as b
where
a.cat_parent = b.cat_id
答案 2 :(得分:0)
深度为2或3:
SELECT
l0.cat_name,
l1.cat_name,
l3.cat_name
FROM categories l0
JOIN categories l1 ON l0.cat_id = l1.cat_parent
LEFT JOIN categories l2 ON l1.cat_id = l2.cat_parent