SQL Server 2005使用关系数据库存储CFG

本文介绍的是用关系数据库来存储CFG(控制流程图)的信息。在查询时,为了得到所有dominate关系的结果,使用了CTE来进行递归查询。

本文介绍的是用关系数据库来存储CFG(控制流程图)的信息。在查询时,为了得到所有dominate关系的结果,使用了CTE来进行递归查询。

简单例子如下:

1. 现有表testRe结构如下

2. 欲得到的查询结果为找到id='a'的项的所有pId,即b、c、d。

3. 使用CTE做递归查询:

WITH Re_CTE(id, pId, Level)
Technorati 标签: sql server,CTE,递归,查询
AS
(
    SELECT  id, pId, 1 AS [Level]
    FROM  testRe
    WHERE id='a'
    UNION ALL
    SELECT  t.id, t.pId, [Level] + 1
    FROM  testRe t  INNER JOIN Re_CTE ct
    ON t.id=ct.pId
)
SELECT * FROM Re_CTE

其中,Level为可选项

4. 查询结果为:

5. CTE的简单说明(参考MSDNhttp://msdn.microsoft.com/zh-cn/library/ms186243%28SQL.90%29.ASPx):

WITH cte_name(column_name [,...n])
AS
(
CTE_query_definition –- Anchor member is defined.
UNION ALL
CTE_query_definition –- Recursive member is defined referencing cte_name.
)
-- Statement using the CTE
SELECT *
FROM cte_name

一个递归 CTE 结构必须至少包含一个定位点成员和一个递归成员。

执行时:

将 CTE 表达式拆分为定位点成员和递归成员。

运行定位点成员,创建第一个调用或基准结果集 (T0)。

运行递归成员,将 Ti 作为输入,将 Ti+1 作为输出。

重复步骤 3,直到返回空集。

返回结果集。这是对 T0 到 Tn 执行 UNION ALL 的结果。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索递归
, select
, 查询
, 结果
, 递归查询
, cte
, 成员
, cte解决复杂查询
, 数据库递归查询
, sql递归查询
Defined标签
关系数据库 存储图、server.cfg、求生之路2 server.cfg、commonserver.cfg中文、csgo server.cfg,以便于您获取更多的相关知识。

时间: 2025-01-31 05:48:26

SQL Server 2005使用关系数据库存储CFG的相关文章

SQL Server 2005 Compact Edition 的数据存储体系结构

摘要: SQL Server 2005 Compact Edition (SSCE) 为构建多种应用程序类型提供功能强大并且轻型的数据存储引擎.本文介绍了客户端应用程序和小规模服务器应用程序的数据存储问题.文章讨论了 SSCE 的功能集以及该功能集如何解决数据存储问题.全文对各种与 SSCE 相适用的应用程序体系结构进行了介绍,重点讲解了应用程序类型的属性以及 SSCE 如何满足每种应用程序类型的要求. 简介 为应用程序选择合适的数据存储体系结构可以说是件令人望而生畏的任务.可供选择的数据存储技

Microsoft SQL Server 2005 中的 XML 支持(1)

本文探讨 SQL Server 2005 中内置的 XML 支持.描述了这种支持如何与 .NET 框架 V2.0 和本机代码(例如 OLEDB 和 SQLXML)均支持的客户端编程相集成. 一.简介 可扩展标记语言 (XML) 作为一种与平台无关的数据表示形式已被广泛采用.它对于在松散耦合且完全不同的系统,以及各种企业到企业 (B2B) 应用和工作流范畴内交换信息是很有用的.数据交换已成为 XML 技术的主要驱动力之一.. XML 在企业应用程序中的使用正日益广泛,它主要用于对半结构化和非结构化

SQL Server 2005可伸缩性和性能的计划(1)

本白皮书提供了关于不同报表服务实现架构中可伸缩性的相关内容.也提供了一些基于使用Microsoft SQL Server Reporting Services完成您自己的性能测试的指导方针.建议和提示. 简介 Microsoft SQL Server Reporting Services是一个报表平台,包括可扩展和可管理的中央管理报表服务器和可扩展的基于Web.桌面的报表交付.报表服务是微软综合商业智能平台的重要组成部分.对于许多组织,通过报表来交付信息是一个非常重要的日常商务环节.因此,报表性

SQL SERVER 2005数据库镜像(3)

因为Server A无法看见见证服务器Server W或者原先的镜像伙伴Server B,因此必须进入disconnected状态并使数据库不可用. Server B和Server W可以组成quorum.Server B无法看见Server A,因此Server B试图成为主服务器并使其数据库联机.因为Server W也看不到Server A,因此同意了Server B. Server B现在有了quorum,担当起会话的主服务器角色,然后还原其数据库. 如果恢复通信连路,Server A能够

SQL Server 2005 中的商务智能和数据仓库(2)

例如,设想一个"客户"维度.关系型源表有八列: • 客户键 • 客户名称 • 年龄 • 性别 • 电子邮件 • 城市 • 地区 • 国家 相应的 Analysis Services 维度应具有七个属性: • 客户(整型键.以"客户名称"作为名称) • 年龄.性别.电子邮件.城市.地区.国家 数据中存在一种自然层次结构,{国家.地区.城市.客户}.出于导航目的,应用程序开发人员可以选择创建第二个层次结构:{年龄.性别}.商务用户并没有看到这两个层次结构行为方式之间有何

SQL Server 2005 中的商务智能和数据仓库(1)

本文概述了 SQL Server 2005 Beta 2 中"商务智能"平台的增强功能.本文并非实施指南,而是为读者提供了关于"商务智能"平台增强功能的信息. 一.简介 Microsoft SQL Server 2005 是一个完整的商务智能 (BI) 平台,其中为用户提供了可用于构建典型和创新的分析应用程序所需的各种特性.工具和功能.本文简要介绍了您在构建分析应用程序时将要用到的一些工具,并着重介绍了一些新增功能,这些新增功能使复杂 BI 系统的构建和管理比以往更

SQL Server 2005 数据维护实务

1.关于SQL Server 2005数据维护计划 为了使SQL Server数据库的性能保持在最佳的状态,数据库管理员应该对每一个数据库进行定期的常规维护.这些常规任务包括重建数据库索引.检查数据库完整性,更新索引统计信息,数据库内部一致性检查和备份等.这些常规的数据库维护任务需要经常重复,而且繁琐耗时,所以往往被管理员忽略.而且,现在的数据库管理员一天到晚都被很多其他的任务压得喘不过气来,根本没有时间去进行日常维护工作.认识到这些问题的存在,SQL Server通过制定维护计划,提供了一个可

SQL Server 2005新特性

一.企业级数据管理 在当今的互联世界中,数据和管理数据的系统必须始终为用户可用且能够确保安全,有了SQL Server 2005,组织内的用户和IT专家将从减少应用程序宕机时间.提高可伸缩性及性能.更紧密的安全控制中获益.SQL Server 2005 也包括了很多新的和改进的功能来帮助企业的IT团队更有效率的工作.SQL Server 2005 包括了几个在企业级数据管理中关键的增强: 易管理 可用性 可伸缩性 安全性 1.易管理 SQL Server 2005 能够更为简单的部署.管理和优化

SQL Server 2005 Service Broker 初探

本文概述了如何利用 SQL Server 2005 中新增的 Service Broker 功能,加快并简化基于异步排队操作的 SQL Server 应用程序的开发过程.(请注意,在示例文件中,程序员的注释使用的是英文,本文中将其译为中文是为了便于读者理解.) 一.引言 SQL Server 2005 的一个主要成就是可以实现可靠.可扩展且功能完善的数据库应用程序.与 .NET Framework 2.0 公共语言运行库 (CLR) 的集成使开发人员可以将重要的业务逻辑与存储过程合并,而 T-S