0

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

WITH RECURSIVE t(n) AS (
    VALUES (1)
  UNION ALL
    SELECT n+1 FROM t WHERE n < 100
)
SELECT sum(n) FROM t

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

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

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

4

1 回答 1

0

答案取决于您的架构设计、硬件/操作系统、配置和加载的数据量。使用解释和解释分析两种方式运行它,并在几个典型查询中选择最快的。

即使我有足够的信息来猜测您的架构和示例数据,任何对我有利的答案都可能对您不利。

于 2011-05-19T09:57:17.057 回答