2016-06-21 45 views
0

我想获取所有的孩子ID(逗号分离),但我的代码只是得到两个级别heirachy,不超过。我不知道最新的问题?这里是我的代码Mysql查询没有得到所有的父母ID

select concat (a.id,',',a.parent_id) as parents 
    from table1 a 
inner join table1 b 
    on a.id = b.parent_id 
where b.id = 5 

这里是我的表结构:

id | parent_id 
    --------------------- 
    1 |  6 
    2 |  NULL 
    3 |   1 
    4 |   3 
    5 |   4 
    6 |  NULL 
    7 |  NULL 

输出预计:

4,3,1,6 
+0

您对此有何期待?你能告诉我们吗? – DevelopmentIsMyPassion

+0

你有多少个关卡? – sagi

+0

应该是一般的。动态水平 –

回答

0

尝试

SELECT GROUP_CONCAT(@temp:=T.parent_id) as parents 
FROM (SELECT * FROM testTable ORDER BY id DESC) T 
JOIN 
(SELECT @temp:=5)tmp 
WHERE [email protected]; 

参见:SQL Fiddle