mysql查询某节点的所有子节点
mysql查询某节点的所有子节点,支持无限级SELECTid ,parent_id,nameFROM(SELECTt1.id,t1.name,t1.parent_id,IF( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), -1 ) AS ischildFROM( SELECT id, paren
·
mysql查询某节点的所有子节点,支持无限级
SELECT
id ,parent_id,name
FROM
(
SELECT
t1.id,t1.name,t1.parent_id,
IF
( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), -1 ) AS ischild
FROM
( SELECT id, parent_id,name FROM 表名 t) t1,
( SELECT @pids := 需要查询的节点id ) t2
) t3
WHERE
ischild != -1
mysql查询某节点的所有父级节点,支持无限级
SELECT
t2.id,
t2. category_parent_id as categoryParentId,
t2.category_name as categoryName,
t2.category_level as categoryLevel
FROM
(
SELECT
@r AS _id,
(SELECT @r := category_parent_id FROM design_category WHERE id = _id) AS category_parent_id,
@l := @l + 1 AS lvl
FROM (SELECT @r := 需要查询的节点id, @l := 0) vars, 表名 AS h
) t1 JOIN design_category t2 ON t1._id = t2.Id
更多推荐
已为社区贡献4条内容
所有评论(0)