【发布时间】:2016-07-13 04:38:45
【问题描述】:
我有一个自引用表:有一个 ID 和一个 PARENTID 列,允许将记录排序到一个层次结构中(我们称它们为记录层次结构)。
还有一个查询(我们称其为“查询 A”),它会返回此表中的记录列表。返回的一些记录是“根记录”(PARENTID = NULL),而一些是非根记录(PARENTID != NULL)。请注意,“查询 A”可以返回属于同一记录层次结构的多条记录。
我需要以最有效的方式完成(效率很重要但不是最重要的)是获取“查询 A”返回的所有记录的根记录,以便搜索“查询 A”中的非根记录他们的根记录。
【问题讨论】:
-
那个查询是什么?存储过程?一个看法?只是普通的sql?
-
Zoher:只是一个普通的 SQL 查询。
-
您可以发布查询吗?
-
如果您在问题中包含表的示例数据、查询 A 返回的示例以及您对最终查询的期望结果,这将有助于理解问题并验证任何建议的解决方案.
标签: sql sql-server hierarchical-data recursive-query