在SQL中获取递归表的子项

姆贾兹达尼

我有一个表,其中包含一些级别(最高5级),如下所示。我想创建一个获取一些ID并返回项目及其子项的过程……我不知道该如何处理!(当refid为1时,表示该节点是第一级的父级)

在此处输入图片说明

姆贾兹达尼
    DECLARE @Table TABLE(
    ID INT,
    ParentID INT,
    NAME VARCHAR(20)
)

INSERT INTO @Table (ID,ParentID,[NAME]) SELECT 1, NULL, 'A'
INSERT INTO @Table (ID,ParentID,[NAME]) SELECT 2, 1, 'B-1'
INSERT INTO @Table (ID,ParentID,[NAME]) SELECT 3, 1, 'B-2'
INSERT INTO @Table (ID,ParentID,[NAME]) SELECT 4, 2, 'C-1'
INSERT INTO @Table (ID,ParentID,[NAME]) SELECT 5, 2, 'C-2'


DECLARE @ID INT

SELECT @ID = 2

;WITH ret AS(
        SELECT  *
        FROM    @Table
        WHERE   ID = @ID
        UNION ALL
        SELECT  t.*
        FROM    @Table t INNER JOIN
                ret r ON t.ParentID = r.ID
)

SELECT  *
FROM    ret

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在SQL中获取递归表的子项

来自分类Dev

使用PHP递归获取子项

来自分类Dev

无法通过系统注册表中的递归打印子项的子项

来自分类Dev

SQL Server 中的递归查询和所有子项

来自分类Dev

在MySQL / MariaDB关系表中获取给定父节点的所有子项(及其子项)

来自分类Dev

在umbraco中获取子项

来自分类Dev

在DOM表中追加子项

来自分类Dev

从Redis的哈希中获取子项

来自分类Dev

在子项中获取父指令

来自分类Dev

Android在listView中获取子项

来自分类Dev

在 JSON DataSnapshot 中获取子项

来自分类Dev

遍历注册表并获取所有子项和C#中RegistryKey中的值

来自分类Dev

从自引用表中获取所有子项(子代,子代)和父代

来自分类Dev

从自引用表中获取所有子项(子代,子代)和父代

来自分类Dev

在 SQL 中执行递归查询以级联获取数据

来自分类Dev

从SQL中的单独表中获取ID

来自分类Dev

在父表为PK的SQL中的同一表查询中递归父表/子表

来自分类Dev

熊猫-在数据框中递归查找子项

来自分类Dev

递归地扩展QTreeView中item的所有子项

来自分类Dev

在注册表子项中搜索值

来自分类Dev

如何从Delphi中的TRESTReponse获取子项值?

来自分类Dev

获取LINQ列表中的所有子项

来自分类Dev

在ExpandableListview中获取特定子项的视图

来自分类Dev

如何从Delphi中的TRESTReponse获取子项值?

来自分类Dev

获取LINQ列表中的所有子项

来自分类Dev

根据变量中的子项获取XML值

来自分类Dev

从SQL中的表获取相同字段的数目

来自分类Dev

从NetBeans中的SQL表获取值

来自分类Dev

SQL从多个表中获取数据