zoukankan      html  css  js  c++  java
  • MS SQL Server递归查询

    刚才在论坛上看到网友一个要求。参考如下,Insus.NET分析一下,可以使用MS SQL Server的递归查询,得到结果。




    准备一张表:


    根据网友提供的数据,填充此表:



    下面语法在SQL Server 2014之下运行正常:


    上面代码示例中,完整SQL代码:

    WITH TempDeptment ([ID],[PID],[DeptName],[Conjunction]) AS
    (
        SELECT [ID],[PID],[DeptName], CAST([DeptName] AS Nvarchar(1000)) FROM [dbo].[Deptment] WHERE [PID] = 0
        UNION ALL
        SELECT d.[ID], d.[PID], d.[DeptName], CAST(([Conjunction] + N'/' + d.[DeptName]) AS Nvarchar(1000))    FROM TempDeptment AS td,[dbo].[Deptment] AS d WHERE td.[ID] = d.[PID]
    )
    SELECT [ID], [Conjunction] FROM TempDeptment
    View Code


    运行结果:

      Insus.NET以前也没有在SQL中实现过递归,现刚好有一个实例,算是练习了。

  • 相关阅读:
    契约测试SpringCloud Contract入门
    CircuitBreaker 组件 resilience4j
    阿里开源的15个顶级Java项目
    将军令:数据安全平台建设实践
    ResNet
    设计模式
    muduo评测摘要
    muduo 学习
    RAII
    大数据框架
  • 原文地址:https://www.cnblogs.com/insus/p/3792516.html
Copyright © 2011-2022 走看看