- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在SQL Server 2000/2005/2008中获得Oracle的CONNECT BY PRIOR功能?
最佳答案
实现递归查询的 SQL 标准方法,例如实现的由 IBM DB2 和 SQL Server ,是 WITH
子句。请参阅this article例如,将 CONNECT BY
转换为 WITH
(技术上是递归 CTE)——该示例适用于 DB2,但我相信它会也可以在 SQL Server 上工作。
编辑:显然原始查询者需要一个特定的示例,这是来自 IBM 站点的一个示例,我已经给出了该站点的 URL。给定一个表:
CREATE TABLE emp(empid INTEGER NOT NULL PRIMARY KEY,
name VARCHAR(10),
salary DECIMAL(9, 2),
mgrid INTEGER);
其中 mgrid
引用员工经理的 empid
,任务是获取直接或间接向 Joan
汇报的每个人的姓名。在 Oracle 中,这是一个简单的 CONNECT
:
SELECT name
FROM emp
START WITH name = 'Joan'
CONNECT BY PRIOR empid = mgrid
在 SQL Server、IBM DB2 或 PostgreSQL 8.4(以及 SQL 标准,无论其值(value)如何;-)中,完全等效的解决方案是递归查询(语法更复杂,但实际上更复杂)强大的功能和灵 active ):
WITH n(empid, name) AS
(SELECT empid, name
FROM emp
WHERE name = 'Joan'
UNION ALL
SELECT nplus1.empid, nplus1.name
FROM emp as nplus1, n
WHERE n.empid = nplus1.mgrid)
SELECT name FROM n
Oracle 的 START WITH
子句成为第一个嵌套的 SELECT
(递归的基本情况),与递归部分进行 UNION
结合,其中只是另一个SELECT
。
SQL Server 的特定风格 WITH
当然记录在 MSDN 上。 ,其中还提供了使用此关键字的指南和限制,以及几个示例。
关于sql-server - SQL Server中模拟Oracle的CONNECT BY PRIOR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/959804/
我正在从 JAGS 迁移到 LaplacesDemon 并尝试重写我的一些代码。我读过 LaplacesDemon Tutorial和 LaplacesDemon Examples小插图,我对小插图中
如何在SQL Server 2000/2005/2008中获得Oracle的CONNECT BY PRIOR功能? 最佳答案 实现递归查询的 SQL 标准方法,例如实现的由 IBM DB2 和 SQL
我正在尝试通过使用工具来检测导致内存问题的对象是什么,但是 Xcode 9.3 中似乎存在使用工具的问题,如以下位置所述:https://forums.developer.apple.com/thre
假设我的 oracle 数据库中有下表: ID: Name: Parent_ID: 123 a 234 345 b 123 234 c
我正在使用 datetime.strptime 在 Python 2.7 中解析一些日期时间字符串。我想假设日期早于现在。 但是 strptime 的 %y operator默认情况下不这样做: d
我的内存力很差。每当我在 Oracle 中执行 CONNECT BY 查询时 - 我的意思是每次 - 我都必须认真思考,通常通过反复试验来确定 PRIOR 应该使用哪个参数。 我不知道为什么我不记得
我正在 STAN(rstan 库)中拟合逻辑模型。我的响应变量没有任何缺失值,但是我的协变量之一“HB”是二进制的,并且缺少条目。 因此,目标是在每次迭代时使用伯努利先验(参数为 0.5)来估算二元向
我正在使用 2 个分类变量构建二项式回归模型。这是来自《Statistical rethinking》一书中的一个例子。在书中,在使用 rethinking 包时,我们可以为每个分类变量设置先验,如下
给定一个条件,我想搜索一个元素列表并返回第一个达到条件的元素和前一个元素。 在 C/C++ 中,这很容易: int i = 0; for(;;i++) if (arr[i] == 0) break;
我有一组在几天内进行的测量。测量的数量通常为 4。在任何测量中可以捕获的数字范围是 1-5(在现实生活中,给定测试集,范围可能高达 100 或低至 20)。 我想每天计算每个值在当天之前发生了多少次。
以下 SQL: WITH vehicle_build_structure (part_no, parent_part, qty_per_assembly) AS ( SELECT 'LORRY'
我有以下 SQL 语句: SELECT CONNECT_BY_ROOT ANIMAL_ID "ORIGINAL_ANIMAL" , ANIMAL_ID, LINE_ID, SIRE_A
我有以下代码来生成范围内相邻对的元组。这适用于双向范围,但不适用于仅正向范围。 template // Returns a range of adjacent pairs of th
我正在使用 scrapy 1.1 来抓取网站。该站点需要定期重新登录。我可以判断何时需要这样做,因为需要登录时会发生 302 重定向。基于 # http://sangaline.com/post/ad
我正在编写一个服务器查询工具,我有一些代码来解析最顶部的参数: # Parse arguments p = argparse.ArgumentParser() g = p.add_mutually_e
以下代码在指定的插图内平铺图像区域: UIEdgeInsets imgInsets = UIEdgeInsetsMake(10.f, 5.f, 13.f, 44.f); UIImage *image
在 Delphi 中,与 Dataset.Next 相比,使用 Dataset.Prior 是否会降低性能? 背景: 我有一个在数据集中搜索特定记录的例程。我从数据集中的最后一条记录开始,然后使用 D
这是一个反复出现的问题,例如 Error in install.packages : cannot remove prior installation of package ‘DBI’ Warning
我是 Xcode 和分析工具仪器的新手。我试图找出我的 c 程序的漏洞。一切安好。它显示没有泄漏,但我不明白程序中使用的一些术语。是否意味着我在程序的其他地方仍然存在内存泄漏? 最佳答案 在操作系统已
我真的很喜欢 jQuery 插件 Image Mapster。然而,我真的遇到了一个砖墙,我需要一些帮助才能攀登。 我需要做以下事情: 在任何交互之前用边框和颜色突出显示所有图像映射区域 使用可能不同
我是一名优秀的程序员,十分优秀!