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

部门表:

人员表:

存储过程:

--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

时间: 2024-11-25 02:19:18

存储过程递归获取获取多级部门全名的相关文章

[WinForm][DevExpress][TreeList]向上递归,获取公共父节点

最近项目开发中,需要获取到公共节点,如图: 譬如,当点击"Test103-2"节点,其类型是"灯"类型,那怎么获取到"中心区域"这个类型是"地域"的公共节点了?(不知道描述清楚木有哈) 核心代码: /// <summary> /// 向上递归,获取符合条件的父节点 /// </summary> /// <param name="node">需要向上递归的节点</pa

路由机构 -- 下拉框获取当前所属部门

//下拉框获取当前所属部门 function initRespOrg(){   $.ajax({           type: "POST",            url: "/tms/actions/tms_net_org/localOrg.do?actionId=tms_net_org_localOrg",            dataType:"json",            data :"",       

[WinForm][DevExpress][TreeList]向上递归,获取符合条件的父节点

关键代码: /// <summary> /// 向上递归,获取符合条件的父节点 /// </summary> /// <param name="node">需要向上递归的节点</param> /// <param name="conditionHanlder">判断条件[委托]</param> /// <returns>符合条件的节点[TreeListNode]</return

MySql数据库查询多级部门及其下的所有用户信息

关于多级别菜单栏或者权限系统中部门上下级的树形遍历,oracle中有connect by来实现,  mysql没有这样的便捷途径,所以MySQL遍历数据表是我们经常会遇到的头痛问题,下面通过数据库函数来实现 1.建表 ①  机构表 CREATE TABLE `t_sys_org` ( `ID` varchar(64) NOT NULL COMMENT '主键ID', `CODE` varchar(60) DEFAULT NULL COMMENT '编码', `NAME` varchar(200)

多级部门查询性能问题解决方案

目录 项目吐槽 遇到的问题 1.mysql函数group_contact()返回值限制 2. Impala使用in语句存在限制 解决方案 优化MySQL函数递归调用方案 将Impala的in查询转换为等值查询 总结 项目吐槽 其实,涉及部门层级关系的问题在很多情形下都会遇到,特别是针对toB的应用开发场景. 但奇葩的是,在我们的项目里头,项目经理在前期需求调研时,预估的用户部门最大数为1k,于是相关的开发同事就按照最大数1k*4=4k的目标进行了设计实现,而真正交付到用户生产环境时同步的数据是1

C# 递归程序 获取某个节点下的全部子节点

/// <summary> /// 获取组织结构树 /// </summary> /// <param name="list"></param> /// <param name="id"></param> /// <param name="treeNodes"></param> /// <returns></returns> s

树状sql--采用递归方式获取节点

创建数据库 create table City(id varchar(3) primary key , pid varchar(3) , name varchar(10)) 插入数据 insert into City values('001' , null , '广东省'); insert into City values('002' , '001' , '广州市'); insert into City values('003' , '001' , '深圳市') ; insert into Ci

JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法

函数的作用域:调用对象 JavaScript中函数的主体是在局部作用域中执行的,该作用域不同于全局作用域.这个新的作用域是通过将调用对象添加到作用域链的头部而创建的(没怎么理解这句话,有理解的亲可以留言告诉我, 谢谢).因为调用对象是作用域链的一部分,所以在函数体内可以把这个对象属性作为变量来访问. 调用对象的属性包括:用var声明的局部变量,函数形参,还有一种特殊的属性arguments 函数的实际参数:实际参数对象 arguments对象,用来引用实际参数对象.函数的arguments对象并

android应用开发_网络部分2——采用HttpURLConnection获取获取网页源代码

本文是android应用开发_网络部分1——采用HttpURLConnection获取网络图片的延续练习. 接下来,我们再来一个查看网页源代码的工程来加深了解. 布局上还是一个竖直排列的线性布局,一个edittext用于输入html路径,一个button,用于点击获取,一个textview用于显示. main.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:and