首页 > 其他 > 详细

存储过程递归获取获取多级部门全名

时间:2017-09-27 19:38:21      阅读:187      评论:0      收藏:0      [点我收藏+]

部门表:

技术分享

人员表:

技术分享

存储过程:

 

--OrgID 72 当前的部门ID
ALTER function [dbo].[getOrgAllName](@OrgID int)
returns nvarchar(500)
as
begin

--调试用
--declare @OrgID int
--set @OrgID=72

declare @oname nvarchar(50)
declare @fid int
declare @rtnValue nvarchar(500)

select @oname=orgname,@fid=parentid from sys_org where orgid=@OrgID

if (@fid=0)
set @rtnValue=@oname
else
begin
select @rtnValue=dbo.getOrgAllName(@fid)
set @rtnValue=@rtnValue+‘\‘+@oname
end
--print @rtnValue
return @rtnValue
end

 

调用和测试结果:

select UserID,USERNO,USERNAME,ORGID, dbo.getOrgAllName(OrgID) as 部门全称 from Sys_User

技术分享

 

存储过程递归获取获取多级部门全名

原文:http://www.cnblogs.com/zhan-shuai/p/7603158.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!