createprocedure pro_comp_user( @i_comp_id varchar(60) ) as --查找组织以及下级组织的所有人员 2004-07-15 declare @ORG_TABLE table ( CORG_ID varchar(36), CLEVEL int ) declare @CLEVEL int declare @CPARENT_ID varchar(36) declare @CCHILD_ID varchar(36) set @CPARENT_ID = @i_comp_id set @CLEVEL =1 insertinto @ORG_TABLE (CORG_ID,CLEVEL) values (@CPARENT_ID,@CLEVEL) loops: begin insertinto @ORG_TABLE select CCHILD_ID CORG_ID, @CLEVEL +1 from MY_ORG_USER where CPARENT_ID in (select CORG_ID from @ORG_TABLE where CLEVEL = @CLEVEL) and CTYPE =1 if @@rowcount >0 begin set @CLEVEL = @CLEVEL +1 goto loops end end begin select c.CNAME , c.CUSER_NAME --d.CORG_ID , --d.CORG_NAME from @ORG_TABLE a innerjoin MY_ORG_USER b on a.CORG_ID = b.CPARENT_ID innerjoin MY_USER_LIST c on b.CCHILD_ID = c.CUSER_ID innerjoin MY_ORG_LIST d on a.CORG_ID = d.CORG_ID where b.CTYPE =0 --order by CUSER_NAME end