我有以下數據:分組分層數據(parentID + ID)和運行總和?
ID parentID Text Price
1 Root
2 1 Flowers
3 1 Electro
4 2 Rose 10
5 2 Violet 5
6 4 Red Rose 12
7 3 Television 100
8 3 Radio 70
9 8 Webradio 90
我想組報告服務2008年這一數據,並每1級(花/電)的組的價格之和爲0級(根) 。
我有一個表[ID]與[parendID]的遞歸父母分組,並且我能夠計算級別0的總和(只是在組外的另一行),但不知何故,我是無法爲每個組創建總和,因爲SRSS可以「創建」每個級別的組。我想要的結果看起來像這樣:
ID Text Price
1 Root
|2 Flowers
|-4 Rose 10
|-5 Violet 5
| |-6 Red Rose 12
| Group Sum-->27
|3 Electro
|-7 Television 100
|-8 Radio 70
|-9 Webradio 90
Group Sum-->260
----------------------
Total 287
(只是增加了水平澄清ID的壓痕)
與我目前的做法,我不能拿到小組第一的款項,所以我想通了,我需要以下數據結構:
ID parentID Text Price level0 level1 level2 level3
1 Root 1
2 1 Flowers 1 1
3 1 Electro 1 2
4 2 Rose 10 1 1 1
5 2 Violet 5 1 1 2
6 4 Red Rose 12 1 1 1 1
7 3 Television 100 1 2 1
8 3 Radio 70 1 2 2
9 8 Webradio 90 1 2 2 1
具有上述結構我可以創建0級的外合併,與子分組相應級別1,級別2,級別3時。如果現在在級別1上有一個「組總數」,並且組外的總數完全是我想要的。
我的問題是: 如何既達到我期望的結果與我目前的數據結構,或如何將我的當前數據結構(?左外連接)進入「新的數據結構」暫時 - 所以我可以從臨時表中運行我的報告?
感謝你的時間, 丹尼斯
你可以有遞歸限制嗎?你在例子中提到了4個級別。如果限制,你可以盲連4次,否則你可能不得不做一個函數或添加一個「LevelNumber」列。 – 2010-02-04 18:24:02
4個級別是最大的,我應該指定 – 2010-02-05 10:14:58
認爲你可能會得到更多的迴應,如果你將它標記爲't-sql' – 2010-03-09 16:20:42