는 관련 값트리 데이터를 그룹화하고 집계 및 합계하는 가장 좋은 방법은 무엇입니까?
ItemValue
-------------
ItemId (fk)
Amount
그리고 일부 샘플 데이터
Item ItemValues
Id ParentId ItemId Amount
-------------------- ----------------------
1 null 1 10
2 1 3 40
3 1 3 20
4 2 4 10
5 2 5 30
6 null
7 6
8 7
내가 Item.Id
을 가지고 직접적인을 반환하는 sproc에 필요의 관련 테이블 자체 참조 테이블
Item
-------------
Id (pk)
ParentId (fk)
을 감안할 때 아이들은 모두 ItemValue.Amounts
의 합계를 가지고 있으며, 자녀와 자녀는 tr 아래로 내려갑니다. ee. 예를 들어
1
가 전달되는 경우, 나무가 될 것이다
2, 3, 4, 5
직접 아이들은
2, 3
출력이 동작을 달성하기 위해 적용되어야한다 방법 어떤 종류의
ItemId Amount
------------------
2 40 (values from ItemIds 4 & 5)
3 60 (values from ItemId 3)
것입니까?
CTE 사용을 고려하고 있지만 더 빠르고 더 빠른 방법이 있는지 궁금합니다.
SQL Server 2005도 다시 – Bob