`

with 用法

Go 
阅读更多
请高手解释一下下面语句的原理,多谢!


使用多个定位点和递归成员
以下示例使用多个定位点和递归成员来返回指定的人的所有祖先。创建了一个表,并在表中插入值,以建立由递归 CTE 返回的宗谱。

复制代码
-- Genealogy table
IF OBJECT_ID('Person','U') IS NOT NULL DROP TABLE Person;
GO
CREATE TABLE Person(ID int, Name varchar(30), Mother int, Father int);
GO
INSERT Person VALUES(1, 'Sue', NULL, NULL);
INSERT Person VALUES(2, 'Ed', NULL, NULL);
INSERT Person VALUES(3, 'Emma', 1, 2);
INSERT Person VALUES(4, 'Jack', 1, 2);
INSERT Person VALUES(5, 'Jane', NULL, NULL);
INSERT Person VALUES(6, 'Bonnie', 5, 4);
INSERT Person VALUES(7, 'Bill', 5, 4);
GO
-- Create the recursive CTE to find all of Bonnie's ancestors.
WITH Generation (ID) AS
(
-- First anchor member returns Bonnie's mother.
    SELECT Mother
    FROM Person
    WHERE Name = 'Bonnie'
UNION
-- Second anchor member returns Bonnie's father.
    SELECT Father
    FROM Person
    WHERE Name = 'Bonnie'
UNION ALL
-- First recursive member returns male ancestors of the previous generation.
    SELECT Person.Father
    FROM Generation, Person
    WHERE Generation.ID=Person.ID
UNION ALL
-- Second recursive member returns female ancestors of the previous generation.
    SELECT Person.Mother
    FROM Generation, Person
    WHERE Generation.ID=Person.ID
)
SELECT Person.ID, Person.Name, Person.Mother, Person.Father
FROM Generation, Person
WHERE Generation.ID = Person.ID;
GO



分享到:
评论

相关推荐

    oracle数据库startwith用法

    ### Oracle数据库中的START WITH 和 CONNECT BY 用法详解 在Oracle数据库中,处理层次结构数据时,`START WITH` 和 `CONNECT BY` 是非常有用的两个关键字。这些关键字可以帮助我们在查询时构建出树形或者层级结构的...

    with用法归纳.doc

    《with用法归纳》 `with`一词在英语中有着丰富的含义和用法,它不仅可以表示使用工具或手段,还可以表达伴随、与某人一起、关于某事、带有特定特征以及在某个方面等多个概念。这里我们将对`with`的各种用法进行详细...

    with 用法範例

    with 用法範例教學

    0395-极智开发-解读python with用法

    0395_极智开发_解读python with用法

    Python with用法:自动关闭文件进程

    实际上,Python 提供了 with 语句来管理资源关闭。比如可以把打开的文件放在 with 语句中,这样 with 语句就会帮我们自动关闭文件。 with 语句的语法格式如下: with context expression [as target(s)]: with ...

    独立主格+with用法小全.doc

    独立主格结构是英语语法中的一个重要概念,它并非完整的句子,但可以表达出与句子主语之间具有逻辑上的主谓或主表关系的信息。...理解和掌握独立主格结构的用法对于提高英语写作水平和理解能力大有裨益。

    javascript中eval和with用法实例总结

    本文实例讲述了javascript中eval和with用法。分享给大家供大家参考,具体如下: 我们都知道javascript的作用域机制,但是with和eval有时会“破坏”我们对于作用域的常规理解。下面参考网上资源和自己理解总结一下...

    Yii框架关联查询with用法分析

    本文实例分析了Yii框架关联查询with用法。分享给大家供大家参考。具体方法如下: Yii框架关联查询与mysql中的关联查询会有什么区别呢?这里小编就与各位来一起来看看吧。 Yii的关联查询确实是一个方便的东西,网上的...

    Python with语句用法原理详解

    with 用法理解 Overview with 与with之后的object一起,起到了抛出异常和单独生成一个空间让代码在空间里运行的效果。 实验代码 class A: def __init__(self): self.a = 0 def __enter__(self): print('enter...

    Python with用法实例

    python中with可以明显改进代码友好度,比如: 复制代码 代码如下: with open(‘a.txt’) as f:   print f.readlines()  为了我们自己的类也可以使用with, 只要给这个类增加两个函数__enter__, __exit__即可: ...

    javascript简单事件处理和with用法介绍

    在本次内容中,我们将详细探讨JavaScript中的事件处理以及with语句的用法。首先,我们来了解一下JavaScript中的事件处理机制,它允许网页开发者对用户的操作做出响应。具体来说,我们会关注鼠标点击与移动这两种常见...

    WITH CHECK OPTION的用法

    本文将深入探讨WITH CHECK OPTION的用法及其背后的原理,帮助读者更好地理解并掌握这一特性。 ### 什么是WITH CHECK OPTION? 在创建视图时,可以通过添加WITH CHECK OPTION子句来指定视图的某些约束条件。这个...

    英语三大介词with for to的用法

    本文将详细探讨三个重要的介词——with、for、to的常见用法。 首先,介词"with"表示伴随、拥有或者使用某物。它可以用来描述人或物的特征,例如:“China is a country with a long history.”(中国是一个历史悠久...

    【初中英语】with的用法.pdf

    【with的用法】在英语中,with是一个非常常见的介词,它的运用极其广泛,尤其在初中英语学习中,理解并掌握with的用法对于提升英语能力至关重要。with结构不仅在句子中起到丰富表达的作用,还能帮助我们构建复杂的...

    【初中英语】with的用法.docx

    【With的用法详解】 在英语中,"with"是一个非常常见的介词,它有着丰富的含义和用法,尤其在中学英语学习中占有重要地位。本文将深入探讨"with"的基本用法及其在独立主格结构中的应用。 一、With的复合结构 1. *...

    Vue js with语句原理及用法解析

    vue源码中编译部分有下面一段代码,里面用到了with: export function generate ( ast: ASTElement | void, options: CompilerOptions ): CodegenResult { const state = new CodegenState(options) const code...

Global site tag (gtag.js) - Google Analytics