recursive-query相关内容
我有一个带有主键id和外键parent_id的自引用表. +------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+--------------
..
如何在PostgreSQL(版本10.2)中串联RECURSIVE CTE中的父项列表? 例如,我有: CREATE TABLE test ( id SERIAL UNIQUE, parent integer references test(id), text text NOT NULL ); 具有: INSERT INTO test(parent,
..
在 H2 中使用递归CTE时(我知道,实验功能),以下查询无效: Connection con = getConnection(); System.out.println("Wrong result:"); PreparedStatement stmt = con.prepareStatement( "WITH recursive t(f) AS ( "+ " SELE
..
我正在使用Firebird 2.1.表名称为Folders,其字段为: 文件夹ID ParentFolderID FolderName 如果 ParentFolderID是根文件夹,则为-1-否则包含父文件夹的ID. 如何找到低级别节点的所有父节点(直到根文件夹)? 我需要递归查询吗? ( Firebird支持它们) 解决方案 类似以下内容: WITH
..
我有一个引用此模型的自身以允许构建树: class PartCategory(models.Model): parent = models.ForeignKey('PartCategory',on_delete = models.DO_NOTHING,null = True,default = None,blank = True) 名称= models.TextField()
..
我有两个表: MainTable 和 MyTable 。 MyTable具有唯一的ControlNo和ID。我需要从 MainTable 首先添加 EffDate 到 MyTable 基于 ID 和 ControlNo 。 为此,我需要查看 PreviousID 列,然后查看该上一个ID 在 ID 列中,依此类推。 所需的输出应如下所示: 下面是一个示例数据,该数据通过suppl
..
我正在尝试创建一个报告,以将电路上的负载映射到其各自的电源(变压器)。 所有设备都在单独的表中并且相互连接在数据库中:负载,开关,线,电线,变压器。 为简单起见,我将展示一个示例,其中负载仅通过开关直接连接到变压器: 加载表: LoadNumber,SectionNumber,BusNumber 100 54 3000 切换表: Switc
..
我很难用单词来描述,所以这里是示例: select * 到t from(值(10,'A'), (25,'B'), (30,'C'), (45,'D' ), (52,'E'), (61,'F'), (61,'G'), (61,'H'), (79,'I'), (82,'J') )v(用户名,名称) 注意F,G和H如何具有相同的用户ID。 现在,考虑以下递归查询
..
这受问题的启发一个SQL语句-我想出了一个解决方案,但是我对它的效率有所怀疑。 要重述该问题: 我们有2个表:人和父母 人员包含有关每个人的基本数据 Parent 是一个将人与其父母联系起来的联接表 每个人可以有多个父母 我们要接收每个人的数据列出所有祖先-每个祖先在自己的行中 如果没有祖先,则该人只有一行,其parentId为空 以下是数据格式: 人员表
..
这是我第一次尝试递归SQL查询以向上遍历N个父子关系,但我不知道从哪里开始。任何帮助将不胜感激。 方案是我有两个表- rate 和 rate_plan 。费率属于适用于用户的费率计划。 创建期限rate_plan( id整数主键NOT NULL DEFAULT nextval('rate_plan_id'), descr varchar(64)NOT NULL, pa
..
具有三个表的递归CTE的后续问题对我有帮助SQL Server中的CTE。 最初的问题有什么变化?表 MANAGERS 不再包含没有管理者的org.units的行。 目标是获取组织单位的第一个非空经理。我已经使用COALESCE和OUTER JOIN使其工作了,我的问题是是否可以使用递归查询? 下面的示例代码。 DECLARE @ORG_PARENTS TABLE(ORG
..
这听起来很简单,但我找不到任何答案。 我想按小时在一天中的某个时间运行查询。因此,我在小时部分执行了 Group By ,但并非所有小时都有数据,因此存在一些差距。我想每小时显示一次,无论是否有数据。 以下是示例查询: 选择DATEPART(HOUR,DATEADD(HH,-5,CreationDate))作为小时, COUNT(*)作为计数 FROM注释 WHERE Us
..
我正在使用SQL Server 2008 R2 SP1。 我想通过“走树”来递归地为某个组织单位找到第一个非空经理。 我有一个包含组织的表单位“ ORG”,其中包含每个组织的上级表格。 ORG有一个列,其中“ ORG”中的单位称为“ ORG_PARENTS”,一个表包含每个组织单位的经理。该表称为“ ORG_MANAGERS”。 ORG_ID: ORG_ID 1
..
我想使用Oracle中的递归WITH子句在两个不同日期之间生成一个天范围。 与CTE_Dates(cte_date )AS (SELECT CAST(TO_DATE('10 -02-2017','DD-MM-YYYY')AS DATE)cte_date from dual UNION ALL SELECT CAST((cte_date + 1)AS DATE)cte_date
..
在MSSQL 2008中使用多个CTE时,我通常用逗号将它们分开。 但是当我在Teradata环境中尝试使用此命令时,出现错误 在MS SQL中工作: 与CTE1 AS (从Sales.Store中选择前2名) ,CTE2 AS (选择前2名产品编号,从Production.Product中命名) ,CTE3 AS (选择TOP 2名称FROM Person.Contact
..
我正在开发一个辅助项目,为了删除自引用表中的一行及其所有后代,我在触发器内使用了 a递归CTE: 创建触发器dbo.tr_Comment_Delete 在dbo.Comment删除了 AS ; ID为AS SELECT ID从已删除的 UNION所有 中选择c.id 从Comment AS作为c内联接ID AS i 在c.parent_comment_id = i.id
..
我遇到了这种连接行元素的CTE解决方案,我认为它很棒,我意识到CTE的功能是多么强大。 但是,为了有效地使用这种工具,我需要知道 因此,我尝试放慢上述片段的流程,在这里,它如何在内部建立起对于像我这样的初学者而言必不可少的心理形象。 是代码 使用[NORTHWIND] GO / ******对象:表[dbo]。 [Products2]脚本日期:2011年10月18日
..
我试图理解在我的SQL代码中使用CTE的概念。我已经在许多在线文章中解释了这个概念,但是我无法掌握如何迭代来呈现层次结构数据。解释R-CTE的广泛使用的示例之一是Employee and ManagerID示例,如下所示: USE AdventureWorks 使用Emp_CTE AS( SELECT EmployeeID,ContactID,LoginID,ManagerID,Tit
..
我正在努力转换 a | a1,a2,a3 b | b1,b3 c | c2,c1 至: a | a1 a | a2 a | a3 b | b1 b | b2 c | c2 c | c1 以下是sql格式的数据: 创建表数据( “一个” TEXT, “许多” TEXT ); 插入“数据”值('a','a
..
我有一个应用程序可以提供多级权限和角色 我有这个层次结构: 国家 ..区域 .. ...城市 .........协会 ... ......................中心 ...........学校 ............................... Class 此层次结构我将其命名为“ EntityLevels” |
..