您好,欢迎访问一九零五行业门户网

MySQL递归查询当前节点及子节点_MySQL

bitscn.com
mysql递归查询当前节点及子节点
1.表结构
2.查询语句
create procedure pro_getunderorg(in idd varchar(36))begindeclare lev int;set lev=1;drop table if exists tmp1; create table tmp1(id varchar(36),orgname varchar(50),parentid varchar(36) ,levv int); insert tmp1 select id,orgname,parentid,1 from `organization` where parentid=idd;while row_count()>0do set lev=lev+1; insert tmp1 select t.id,t.`orgname`,t.`parentid`,lev from organization t join tmp1 a on t.parentid=a.id and levv=lev-1;end while ; insert tmp1 select id,orgname,parentid,0 from `organization` where id=idd; select * from tmp1;end;
3,调用
call pro_getunderorg('9b2ae044-3b51-47fa-a24c-8326ba7b9fd3');
4,注意: 这种表设计以后一定要加个 路径字段 以后就不用这么费事了,直接 like 查询了 
bitscn.com
其它类似信息

推荐信息