存储过程递归获取获取多级部门全名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了存储过程递归获取获取多级部门全名相关的知识,希望对你有一定的参考价值。
部门表:
人员表:
存储过程:
--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 [email protected]
if (@fid=0)
set @[email protected]
else
begin
select @rtnValue=dbo.getOrgAllName(@fid)
set @[email protected]+‘\\‘[email protected]
end
--print @rtnValue
return @rtnValue
end
调用和测试结果:
select UserID,USERNO,USERNAME,ORGID, dbo.getOrgAllName(OrgID) as 部门全称 from Sys_User
以上是关于存储过程递归获取获取多级部门全名的主要内容,如果未能解决你的问题,请参考以下文章