나는 leafs를 가진 간단한 테이블을 가지고 있고 sub는 info를 leafs한다. childId
및 ParentID
우리가이 주요 질문과 답변을 참조 그래서 여기 재귀 CTE에 대해 두 개 이상의 결과 집합을 가져 옵니까?
같은
을 어디에(포럼 질문 같이) 주요 메시지가 정의된다. 이 메인 쿼리입니다 한마디로
:
가 나는 또한 각 요소의 깊이를 CALC 관리했습니다
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에 대한 모든 클러스터를 준다"?
각 질문마다 복수 결과를 갖고 싶습니다!
그래서 여기에 나는이 개 결과 집합이 필요합니다 : childId=parentId=6
에 대한 하나
childId=parentId=1
하나 하나를 (내가 커서를 사용하려는 해달라고)
어떤 이유로 여러 레코드 집합 (모든 질문에 대해 하나의 레코드 집합)을 원하십니까? –
각 질문은 html repeater에 바인드되어 있습니다. 그 이유는 무엇입니까? 각 질문마다 다른 조작을해야합니다. –
여러 결과 세트를 원할 경우 커서를 사용하지 않으시겠습니까? SQL Server가 단일 집합으로 동작하는 동안 여러 결과 집합을 나타내는 방법이 있다고 생각합니까? 커서가 수행하려고하는 접근 방식에 어떤 성능 문제가 추가 될 것이라고 생각하십니까? –