-
84 votesanswersviews
Sql server CTE和递归示例
我从不使用递归的CTE . 我刚刚读了一篇关于它的文章 . 本文在Sql server CTE和递归的帮助下显示员工信息 . 它基本上显示了员工及其经理信息 . 我无法理解此查询的工作原理 . 这是查询: WITH cteReports (EmpID, FirstName, LastName, MgrID, EmpLevel) AS ( SELECT EmployeeID, F... -
1 votesanswersviews
如何加速递归CTE
鉴于以下递归CTE(我的示例简化了一点): WITH myCTE (sort, parentid, myid, level, somedata) AS ( -- Anchor member definition SELECT CAST(ROW_NUMBER() OVER(ORDER BY o.myid) as decimal(38, 20)) as sort, ... -
0 votesanswersviews
重写函数到条件CTE
Considering following table: SELECT [ItemID] ,[ParentID] ,[PolicyID] ,[PolicyRoot] FROM [AdventureWorks2008R2].[dbo].[Example] ItemID ParentID PolicyID PolicyRoot -----... -
26 votesanswersviews
CTE或CTE
一直坚持使用SQL2000太长时间了,我并没有真正接触过Common Table Expressions . 我给出的答案是here (#4025380)和here (#4018793),因为他们没有使用CTE而违背了这一流程 . 我很感激,对于递归它们是beez kneez,并且有一些查询可以通过它们的使用大大简化,但在什么时候它们的使用只是轻浮?与子查询或联接相比,它们是否具有很好的性能优势?... -
0 votesanswersviews
动态变量和CTE之间的差异
使用动态变量和CTE(公用表表达式)之间的区别是什么 动态: DECLARE @id nvarchar SET @id = ( SELECT ID_CHIMQ FROM Table1 where Name = 'Ben') EXEC sp_executesql @id CTE: WITH cte (Col1, Col2, Col3) AS ( SELECT Col1, Col... -
29 votesanswersviews
在SQL Server中组合CTE“WITH”和“WITH XMLNAMESPACES ...”
有没有人设法在SQL Server的T-SQL中创建一个CTE,其中还包含 WITH XMLNAMESPACES 声明? 似乎两个 WITH 关键字都坚持成为"first in the T-SQL batch",这并不能真正起作用.... 我试过了: WITH XMLNAMESPACES('http://schemas.myself.com/SomeSchema' as ns)... -
0 votesanswersviews
在select语句中使用WITH Query(CTE)
以下CTE查询运行良好: ;WITH QResult AS (SELECT ROW_NUMBER() OVER (ORDER BY Ad_Date DESC) AS Row, * FROM [vw_ads] ) SELECT Co1l, Col2, MAX(Row) OVER() FROM QResult 我需要的是 select top(10) 从... -
3 votesanswersviews
在Postgres中使用sum进行递归查询
我必须在我的数据库中存储很多项目 . 每个项目都可以有子项目 . 结构看起来像一棵树: Project / | \ ProjectChild1 ProjectChild2 [...] ProjectChild[n] ... -
-1 votesanswersviews
如何在多个CTE中从第二个CTE中选择前n行
我用多个CTE编写一个查询,从第一个CTE中选择所有行,从第二个CTE中选择4行 . 我选择了部分,但它返回CTE2中的整个项目 . this is what it returns and selected part that i want. 这是我的疑问: ;WITH CTE1(UserName, ItemId, ItemName, ImageId, ImageName) AS ( ... -
1 votesanswersviews
Sql Server cte错误“子查询返回了多个值 . ”
这个问题是对我在其他近期帖子中提到的我的第一个cte进行编码的同样努力的延续 . 简而言之,我正在为下面的查询解决几个编译器错误 . 我现在收到错误“Subquery返回了多个值 . 当子查询跟随=,!=,<,<=,>,> =或子查询用作表达式时,不允许这样做 . ”但根据我目前的能力,我在下面提出的内容对我来说似乎是“合法的”......任何帮助都会很棒 . BTW我得... -
1 votesanswersviews
更新后更新触发器逻辑
我在触发器中遇到了错误的逻辑 . 我在基表上更新后插入到Audit表中的记录数量错误 . 以下是重新创建此问题的代码段 . create table #T1 (id int NOT NULL, CODE varchar(3) NOT NULL, pkID INT NOT NULL) insert into #T1 (id, CODE, pkID) values(1, 'vak', 1989),(2... -
-1 votesanswersviews
公共表表达式,用于定义游标中的函数
有人知道是否可以使用在PL / SQL游标中定义局部函数的公用表表达式? 例如,此代码为我产生错误: DECLARE CURSOR LV_CUR IS WITH function fct2(x number) return number is begin return 2*x; end; TEMP_AV AS ( SELECT ... -
1 votesanswersviews
TSQL - Begin End中的子查询
请考虑以下查询: begin ;with t1 as ( select top(10) x from tableX ), t2 as ( select * from t1 ), t3 as ( select * from t1 ) -- -------------------------- select * from t2 join t3 on t... -
1 votesanswersviews
为什么在CTE中的WHERE子句之前执行UDF调用?
我试图理解为什么带有UDF(用户定义函数)调用的CTE(公用表表达式)如此之慢 . 表TABLE1有1000万行 . 最后一个where子句(ROWN = 1)正在过滤并仅返回10条记录 . 出于不明原因,MYFUNCTION被称为百万次(在WHERE子句过滤器之前)并且它使查询变慢 . 如果删除了MYFUNCTION调用,则查询立即运行 . 如何在应用WHERE子句后强制SQL运行M... -
1 votesanswersviews
CTC在kdb递归查询中
以下是sql server中的CTE示例 . 我必须在KDB中进行类似的递归 . KDB是否支持递归查询或接近它的内容 . 目前我可以考虑创建函数并将每个递归的临时数据保存到某个东西中...... USE AdventureWorks2012; GO WITH DirectReports(ManagerID, EmployeeID, Title, EmployeeLevel) AS ( ... -
18 votesanswersviews
多次阻止递归CTE访问节点
考虑以下简单的DAG: 1->2->3->4 还有一个表#bar,描述了这个(我正在使用SQL Server 2005): parent_id child_id 1 2 2 3 3 4 //... other edges, not connected to the subgraph above 现在假设我有一些其... -
0 votesanswersviews
从CTE到mySQL存储过程代码
这是一个使用sql CTE创建包含用户之间关系的表的传递闭包的查询 . (图的边缘) . 怎么能在mySQL中完成? WITH RECURSIVE transitive_closure(a, b, distance, path_string) AS ( SELECT a, b, 1 AS distance, a || '.' || b || '.' AS path_string ... -
0 votesanswersviews
用于图数据库的PostgreSQL CTE语句
我在Postgres中使用CTE并不是很强大,但我认为这是我得到的图形问题的正确方向 . 我要做的是使用我的边缘表和最短路径数组生成一个SQL语句 . 我有两个图:数据和架构 . 数据图包含所有数据(显然),模式图描述了不同节点类型如何组合在一起 . 我不是递归地遍历已经很大且不断增长的数据图,而是创建了一个模式图,我想用它来生成数据图的查询 . 如果可能的话,它会明显更快 . 假设我有以下表格:... -
11 votesanswersviews
为什么Oracle与nocycle连接遵循root循环
有没有人知道为什么当循环发生在顶级节点(根节点连接到根节点)时,Oracle继续遵循循环循环之外的路径?更重要的是,如何预防呢? 我有Oracle 11g第2版(11.2),我一直在探索分层查询 . 我将围绕Oracle数据库SQL语言参考第9-4页的图9-1中的树结构构建我的问题 我使用供应商和客户的概念为这棵树创建了一个表格结构: create table t ( vendor ... -
1 votesanswersviews
多列重叠日期
;with cte as ( select Domain_Id, Starting_Date, End_Date from Que_Date union all select t.Domain_Id, cte.Starting_Date, t.End_Date from cte join Que_Date t on cte.Domain_Id = t.Domain_Id and cte... -
0 votesanswersviews
在获取'more than 1 value'错误时选择具有最小值的行?
我想做这样的事情: select * from challenger where sqrt( square(Launch_temperature-70) )= ( select min( sqrt( square(Launch_temperature-70) ) ) from challenger) 但是,如果我使用下面的其他两种方式,SQL Serve... -
120 votesanswersviews
CTE和SubQuery之间的区别?
来自这篇文章How to use ROW_NUMBER in the following procedure? 有两个版本的答案,其中一个使用 SubQuery ,另一个使用 CTE 来解决同样的问题 . 那么,使用 CTE (Common Table Expression) 而不是s ub-query 的优势是什么(因此,更多 readable 查询实际上在做什么) 使用 CTE over ... -
6 votesanswersviews
Sql Server - 子查询中的用户CTE
之前已经问过这个问题 - How we can use CTE in subquery in sql server? 建议的唯一答案是“只需在顶部定义您的CTE并在子查询中访问它?” 这有效,但我真的希望能够在以下场景中使用CTE - 作为SELECT中的子查询 作为SELECT的FROM子句中的派生表 这两个都在PostgreSQL中工作 . 使用Sql Server 2005,我...