1 现在有如下的一张表:

CREATE TABLE [dbo].[ThemeCategory]
(
[ID] [int] NOT NULL,
[ThemeCategoryName] [nvarchar] () COLLATE Chinese_PRC_CI_AS NULL,
[ThemeCategoryCode] [nvarchar] () COLLATE Chinese_PRC_CI_AS NULL,
[ParentId] [int] NULL,
[OrderId] [int] NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[ThemeCategory] ADD CONSTRAINT [PK_THEMECATEGORY] PRIMARY KEY CLUSTERED ([ID]) ON [PRIMARY]
GO

其中

ParentId

是它的父ID

现在有一个要求,给某条记录的ID 要递归出它的祖先记录们,也就是倒推回去

2 表的内容如下

ID    ThemeCategoryName    ThemeCategoryCode    ParentId    OrderId
1 1 tcfl 0 435
2 2 2 0 43
3 3 3 0 1
4 11 1111 1 1
5 21 21 2 54
6 211 sdfsd 5 342

3 实现递归遍历的方法

with temp_ThemeCategory ( [Id], [ParentId],[ThemeCategoryName])
as
(
select [Id], [ParentId],[ThemeCategoryName]
from PE_C_ThemeCategory
where ID = @publicThemeId
union all
select a.Id, a.parentid,a.ThemeCategoryName
from ThemeCategory a
inner join temp_ThemeCategory on a.[id] = temp_ThemeCategory.[ParentId]
)
select * from temp_ThemeCategory ORDER BY Id ASC

这样查出来就是

递归查询构造jquery tree的更多相关文章

  1. jQuery.buildFragment源码分析以及在构造jQuery对象的作用

    这个方法在jQuery源码中比较靠后的位置出现,主要用于两处.1是构造jQuery对象的时候使用 2.是为DOM操作提供底层支持,这也就是为什么先学习它的原因.之前的随笔已经分析过jQuery的构造函 ...

  2. 10+ 最流行的 jQuery Tree 菜单插件

    jstree – jQuery Tree Plugin With HTML & JSON Data jstree is a lightweight and flexible jQuery pl ...

  3. 树型权限管理插件:jQuery Tree Multiselect详细使用指南

    1.认识jQuery Tree Multiselect 这个插件允许用户以树型的形式来呈现列表复选框的选择.多用于权限管理中用于分配不同的权限.使用文档,请参考:     https://github ...

  4. jquery 1.7.2源码解析(二)构造jquery对象

    构造jquery对象 jQuery对象是一个类数组对象. 一)构造函数jQuery() 构造函数的7种用法: 1.jQuery(selector [, context ]) 传入字符串参数:检查该字符 ...

  5. jQuery源码分析-03构造jQuery对象-源码结构和核心函数

    3. 构造jQuery对象 3.1源码结构 先看看总体结构,再做分解: (function( window, undefined ) { var jQuery = (function() { // 构 ...

  6. 【转】jQuery源码分析-03构造jQuery对象-源码结构和核心函数

    作者:nuysoft/高云 QQ:47214707 EMail:nuysoft@gmail.com 毕竟是边读边写,不对的地方请告诉我,多多交流共同进步.本章还未写完,完了会提交PDF. 前记: 想系 ...

  7. JavaScript-Tool:jquery.tree.js-un

    ylbtech-JavaScript-Tool:jquery.tree.js 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 0. https://www.jst ...

  8. jquery 源码学习(四)构造jQuery对象-工具函数

    jQuery源码分析-03构造jQuery对象-工具函数,需要的朋友可以参考下.   作者:nuysoft/高云 QQ:47214707 EMail:nuysoft@gmail.com 声明:本文为原 ...

  9. 用优先队列构造Huffman Tree及判断是否为最优编码的应用

    前言 我们知道,要构造Huffman Tree,每次都要从堆中弹出最小的两个权重的节点,然后把这两个权重的值相加存放到新的节点中,同时让这两个节点分别成为新节点的左右儿子,再把新节点插入到堆中.假设节 ...

随机推荐

  1. File targeting 'AMD64' is not compatible with the project's target platform 'x86' 解决方法

     我在使用vs2010制作64位安装包时出现了以下问题: File targeting 'AMD64' is not compatible with the project's target plat ...

  2. [leetcode]Reverse Linked List II @ Python

    原题地址:https://oj.leetcode.com/problems/reverse-linked-list-ii/ 题意: Reverse a linked list from positio ...

  3. 如何将frm格式MYD格式MYI格式文件导入MySQL中

    frm,myd,myi是属于MySQL存储数据的文件,phpMyAdmin是无法导入的. phpMyAdmin支持的文件格式为sql文件. 其实很简单: 1.找到你的mysql的安装目录下的data文 ...

  4. Laravel Composer 脚本

    composer update --no-scripts 执行静态文件 composer dump-autoload 文件映射

  5. 转:pytorch版的bilstm+crf实现sequence label

    http://blog.csdn.net/appleml/article/details/78664824 在理解CRF的时候费了一些功夫,将一些难以理解的地方稍微做了下标注,隔三差五看看加强记忆, ...

  6. String 转化Calendar

    SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ); Date dateExecute = s ...

  7. CHtmlEditCtrl (2): Add a Source Text Editor to Your HTML Editor

    In a previous article, I described how to create an HTML editor using the MFC CHtmlEditCtrl class in ...

  8. 轻松解决vuejs跨域

    Vuejs跨域问题实战 有时候,本地使用webpack开启一个node的dev端口,项目中使用vuejs去访问别人家的api,比如豆瓣或者其他的api,不使用jsonp肯定就会报跨域的问题. 如何让我 ...

  9. [Algorithm] How many times is a sorted array rotated?

    Given a sorted array, for example: // [2,5,6,8,11,12,15,18] Then we rotated it 1 time, it becomes: / ...

  10. Springmvc 服务器端文件下载

    转自:http://blog.csdn.net/boneix/article/details/51303280 业务场景:点击下载后直接保存而不是打开 解决代码:前端传入url /** * 返回流 * ...