问题标签 [recursive-query]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
12143 浏览

database - 具有递归性能的 PostgreSQL

我有一个简单的问题。不知何故,我无法找到明确的答案。

WITH RECURSIVEPostgreSQL中的语法优化了多少?我的意思是:它仅仅是一系列非递归查询的语法糖,还是它更像是一个语句,尽管其复杂的语义已经作为一个整体进行了优化。一个后续问题 - 优化这种语法有多少可能?当然,欢迎提供有关此事的具体数据。

0 投票
2 回答
283 浏览

sql - 创建嵌套 html 列表的 cte

我有以下cte:

这给了我一个类似的列表:

但我追求的是一组嵌套的 html 列表:

我很困惑如何做到这一点!

0 投票
1 回答
2280 浏览

sql - postgres对同一张表的递归查询

我现在花了将近一天的时间,似乎我做错了什么。好的,这是关系: document_urls( doc_id , url_id)

我想要做的是构建一个图表,它将显示通过他的 url 从文档生成的所有孩子。示例 select * from document_urls where doc_id=1

doc_id url_id
1 2
1 3

如果我选择所有带有 url_id=3 或 2 的文档,我会找到 select * from document_urls where url_id=2 or url_id=3

doc_id url_id
1 2
1 3
2 3

现在我对文档 2 做同样的练习,因为我们涵盖了文档 1 的所有链接等等。

这是我现在的递归查询

0 投票
2 回答
4015 浏览

sql-server-2008 - 递归 SQL 将 CSV 拆分为表行

在 SO 上处理了一个不同的问题之后,我偶然发现了递归 CTE,从表面上看,这似乎是解决“将 csv 拆分为表行”问题的一种相当简单的方法。

我把这个例子放在一起

这真的是个坏主意吗?像这样的递归查询在 SQL 中的开销是多少,这种方法的潜在缺陷是什么。

顺便说一句,我认为这个想法/技术可能可以用来解决另一个问题。

0 投票
2 回答
6937 浏览

model - 如何获取 cakePHP 模型-> 字段方法以使用关联模型的条件?

我有一个问题,我需要在没有关联模型的情况下从单个记录中检索单个字段,同时使用使用关联模型的条件?

例子:

我想检索第一个Articles.idwhenArticle.category_id=3等。

Model->field('model.field',array(conditions))只要条件不使用外部模型,使用就可以工作。($this->Model->recursive=4不工作)。

使用Model->find('first', array(conditions))效果很好,除了我还获得了我不需要和不想要的关联数据这一事实,通过禁用使用关联模型比较的能力来限制递归结果。

有什么建议吗?

编辑

我的问题,除了是糟糕的调试器:-)是通过在使用该model->read方法时限制递归来解决的。但是,从长远来看,可能是使用可包含行为。

0 投票
2 回答
133 浏览

sql - SQL 查询:从表中获取有序行 - II

以下是表格中的一些条目:

p>

我正在寻找一个 SQL 查询,它会给出如下输出:

p>

好吧,我在这里问了一个类似的问题,但问题并不完整,我也得到了一些很好的答案。编辑该问题可能会使答案不可接受,因此我没有编辑并将其添加为此处的新问题。

  • 根项目的 p_id = 0
  • 一个 r_id 只能有一个 p_id = 0
  • 显示的需要运行 Query 的表可能未相对于根进行排序。
  • 我正在寻找可以在 PostgreSql 中工作的东西

编辑:想法是以这样的方式对行进行排序,即 {r_id, p_id} = x 的行应该位于 {r_id, a_id} = x 的行下方。

0 投票
1 回答
53 浏览

postgresql - SQL:输出顺序

我正在检查 postgresql 的文档中的递归查询,其中有一个示例。

上述语句是否与 100 条 SELECT 语句相同。从文档:

Recursive queries are typically used to deal with hierarchical or tree-structured data.

如果我想根据某些标准对层次结构进行排序,建议递归查询。例如。SQL 查询:从表中获取有序行 - II和接受的答案。是否应该从数据库中检索数据,然后在内存中进行排序。或者 RECURSIVE 查询会更高效

0 投票
2 回答
961 浏览

image - 如何在C#中递归列出一个目录中的所有文件并将所有文件复制到另一个目录

我正在尝试编写递归读取某个文件夹的 ac# 控制台应用程序。在这些文件夹中有数以千计的 .jpg 图像

文件夹结构在某些级别非常深,示例如下所示:

Scc-LocalPhoto/testfiles/1997/JAN-JUN 1997/APRIL 1997/7.4.97 - 11.4.97/FRI11.4.97/

如您所见,文件夹结构非常混乱,但是我无法控制它。

我的任务是通读所有文件夹。从图像中提取元数据并存储在 XML 文件中。然后我需要复制相同布局中的所有文件夹并将它们粘贴到一个新文件夹中。

我想我将能够阅读所有目录并从图像中提取元数据并将其保存到 xml 文件中。

我不知道该怎么做是复制并粘贴所有文件夹和图像,然后将它们粘贴到保持相同文件夹结构的新目录中。

是否有人知道执行此任务的有效方法,或者是否有任何项目,可用的代码可以用作起点。

我对 C# 和编写控制台应用程序相当陌生。谢谢你的时间。

0 投票
1 回答
1433 浏览

sql-server - 是否可以强制 SQL Server 使用我想优化递归 cte 查询的计划

我在视图中有一个使用递归 cte 的大树上的查询,当使用硬编码数字而不是参数查询时效果很好。是否可以强制 SQL Server 使用我要优化此递归 cte 查询的计划?任何想法,将不胜感激。

这是具有递归 CTE 的视图 - 它检索给定实体下的所有节点:

带有参数的视图查询似乎是查询整个视图然后过滤它,因为树太大而永远不会完成 - 我们得到一个最大递归错误:

这是计划(我对索引名称的道歉):

现在,当我使用硬编码值执行相同的查询时,它返回正常:

询问:

计划:

我尝试重新组织实体 pk,并运行sp_updatestats但没有任何区别。

还尝试为提示添加优化,但似乎没有得到它,例如。

我在 SQL Server Management Studio Express 2008 R2 的 SQL Server 2005 Express 数据库上运行它

任何提示或黑客将不胜感激。

0 投票
3 回答
6420 浏览

sql - 除 Oracle 之外的 RDBMS 中的 CONNECT BY 或分层查询

Oracle 附带了一个非常方便的特性。您可以使用以下子句创建分层查询(递归行为):

如此处所述:

http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/queries003.htm

我想知道,是否有任何其他已建立的 RDBMS 支持等效或类似的语法?或者可以使用常规 SQL 来一般地模拟这样的递归行为吗?

我希望能够模拟的一个很好的例子是这个(取自 Oracle 文档):

导致:

伪列和用它实现的LEVEL缩进对我来说并不重要