我有一个简单的表,其中包含叶子和子叶子信息。(就像一个论坛问题)
主消息定义在哪里和childId
是ParentID
相同的
所以在这里我们看到 2 个主要问题及其答案。
我还设法计算了每个元素的深度:
简而言之,这是主要查询:
WITH CTE AS
(
SELECT childID
,parentID,
0 AS depth,name
FROM @myTable
WHERE childID = parentID AND childID=1 -- problem line
UNION ALL
SELECT TBL.childID
,TBL.parentID,
CTE.depth + 1 , TBL.name
FROM @myTable AS TBL
INNER JOIN CTE ON TBL.parentID = CTE.childID
WHERE TBL.childID<>TBL.parentID
)
SELECT childID,parentID,REPLICATE('----', depth) + name
但问题是第 8 行(已评论)。
我目前问“给我所有问题 id #1 的集群”
那么问题出在哪里?
我想为每个问题设置多个结果集!
所以在这里我需要有2个结果集:
一childId=parentId=1
换一换childId=parentId=6
(我不想使用光标)