mysql的从子到父递归查询

mysql实现递归
select * from table start with id in (id个数未知)

connect by prior parent_id=id
这是oracle的,想转成mysql的
表结构
id name code parent_id
1 aaa 001 null
2 bbb 001.002 1
就是普通的树形结构,在线等啊!!!

1个回答

mysql要想是想start with 得自己写个方法

CREATE FUNCTION `getChildList`(rootId varchar(100))   
RETURNS varchar(2000)  
BEGIN   
DECLARE str varchar(2000);  
DECLARE cid varchar(100);   
SET str = '$';   
SET cid = rootId;   
WHILE cid is not null DO   
    SET str = concat(str, ',', cid);   
    SELECT group_concat(id) INTO cid FROM treeNodes where FIND_IN_SET(parentid, cid) > 0;   
END WHILE;   
RETURN str;   
END  

热门云产品限量秒杀,云服务器1核2G 14.5元/月起
https://dwz.cn/qVctf4jS

Artist_Khada_Jhin
Artist_Khada_Jhin 已经弄好了,谢谢
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐