`
xiaoer_1982
  • 浏览: 1820449 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

树型结构数据,求某结点的所有父结点的自定义函数

阅读更多

CREATE FUNCTION f_father(@dpcode varchar(9)) /*树型结构数据,求某结点的所有父结点的自定义函数*/
RETURNS @new table([dpcode] [varchar] (9) , --结点编码
[dpname] [varchar] (20) , --结点名称
[dpcode_p] [varchar] (9) --此结点的父结点编码
) AS
BEGIN
declare @temp table([dpcode] [varchar] (9) , --结点编码
[dpname] [varchar] (20) , --结点名称
[dpcode_p] [varchar] (9) --此结点的父结点编码
) --数据临时存放表
declare @t table([dpcode] [varchar] (9) , --结点编码
[dpname] [varchar] (20) , --结点名称
[dpcode_p] [varchar] (9) --此结点的父结点编码
) --中间临时表
declare @tt table([dpcode] [varchar] (9) , --结点编码
[dpname] [varchar] (20) , --结点名称
[dpcode_p] [varchar] (9) --此结点的父结点编码
) --中间交换临时表


delete @temp
delete @t
delete @tt
delete @new


insert into @temp select DPTCODE, DPTNAME, DPTCODE_P from base_dept
insert into @t select * from @temp where dpcode=@dpcode
insert into @new select * from @t --结果临时表
while ( 1=1)

begin
if (exists(select * from @t where dpcode ='001')) --当为根时,停止循环
begin
break
end
insert into @tt select * from @t --中间交换临时表
delete @t
insert into @t select * from @temp where dpcode in
(select dpcode_p from @tt)
delete @tt
insert into @new select * from @t
end
--insert into @new select * from @temp where dpcode=@dpcode

return
END

分享到:
评论

相关推荐

    数据结构实验报告(C++) 实验2;树型结构实验指导 程序源码

    题目1.满二叉树判断 题目2.(选做题)完全二叉树判断 题目3.相似二叉树判断 题目4.二叉树结点交换  题目5.统计叶结点个数 题目6.构造二叉树

    《数据结构 1800题》

    2. 对于给定的 n个元素,可以构造出的逻辑结构有 (1)集合 , (2)线性结构 , (3)树型结构 ,_图状结构_(4)_四种。 【中科院计算所 1999 二、1(4分)】 3.数据的逻辑结构是指(数据的组织形式,即数据元素...

    数据结构与算法分析实验报告.doc

    开始的时候main函数的数据结构类型定义的与主函数不同,而且缺少返回值,导致最 后的结果陷入死循环,通过看书,向同学询问,得以解决。 2. 经验和体会 哈夫曼树又称最优二叉树,此次实验创建哈夫曼树算法,虽然...

    哈夫曼树(采用EGE图形库绘图)

    1)哈夫曼树类型、select()函数(求两最小权值结点)、哈夫曼树构建、求编码函数、字符串输入处理函数等的声明放在huffman.h文件; 2)select()函数、哈夫曼树构建、求编码函数的实现可放在huffman.c文件; 3)输入...

    数据结构与算法分析》实验报告.doc

    调试过程中主要遇到哪些问题是如何解决的 开始的时候main函数的数据结构类型定义的与主函数不同,而且缺少返回值,导致最 后的结果陷入死循环,通过看书,向同学询问,得以解决。 2. 经验和体会 哈夫曼树又称最优...

    (树型网页菜单编辑器

    WebTree Maker是一个所见即所得的环境,包括一个直观的CSS样式编辑器。...通过添加事件处理函数和回调函数,你可以设置所需的行为特性或进行二次开发,脚本已内置的一些很有用的功能,如支持拖放操作, 动态载入等。

    C++利用map实现并查集

    并查集(Union-Find)是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。 并查集存在两个操作(1.Union 联合 2.finddeputy 查找代表结点) 和一个需要解答的问题( issameset 是否 ...

    XML Library

    此库为XML处理提供了一个简单核心接口(遵守XML语法标准,XML附加功能不支持)。...XML数据在内存中以树型结构被存储,有大量类成员函数处理结点数据,结点属性数据, 统计分析,数据打包。支持中文与数字命名方式。

    WebTree Maker(树型网页菜单编辑器) v1.3

    提供了一个所见即所得的环境,包括一个直观的CSS样式编辑器。...通过添加事件处理函数和回调函数,你可以设置所需的行为特性或进行二次开发,脚本已内置的一些很有用的功能,如支持拖放操作, 动态载入等。

    大数据LBS.docx

    这类索引的好处是给定查询点以后,可以从查询占所在索引结点出发,沿着树型索引依次访问到离查询点距离越来越远的被索引的点。 经典低采样率地图匹配算法:ST – Matching。将GPS点映射到路网中的相应的路段。 路径...

    WebTreehelp_cn.chm

    通过添加事件处理函数和回调函数,你可以设置所需的行为特性或进行二次开发。脚本已内置的一些很有用的功能,如支持拖放操作, 动态载入等。 兼容性: 脚本文件 (web_tree.js) 适用于Internet Explorer 5.0 及...

    软件工程-理论与实践(许家珆)习题答案

    数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成(C)。 A) 数据说明条目、控制流条目、加工条目、数据存储条目 B) 数据流条目、数据项条目、文件条目、加工条目 C) 数据源条目、数据流条目、...

Global site tag (gtag.js) - Google Analytics