我有以下[AllPathsTbl]
,我想寫一個查詢,當我傳遞一個節點名稱時,它將選擇鏈接到該節點的行也間接通過其他鏈接IE)MS SQL查詢,將選擇所有鏈接的節點對的D3桑基圖
SELECT * FROM [AllPathsTbl]
Node1 Node2 TotalValue
D1 Q1 4693094
D2 Q2 1144506
D3 Q3 881685
D4 Q4 2232370
D5 Q5 861860
D6 Q6 27750
D7 Q7 119430
D8 Q8 26200
D9 Q9 2054170
E1 P1 17275
E2 P1 36675
E3 P2 323400
E3 P1 242910
E4 P3 133070
E4 P4 834600
E4 P1 375800
E4 P5 888900
E5 P6 186263
E5 P7 33609
E6 P6 464289
E7 P6 1343779
I13 R15 323400
I16 R15 1427130
I17 R16 1399071
P2 I13 323400
P3 I16 133070
P4 I16 834600
P6 I17 1399071
P1 I16 672660
Q5 E3 861860
Q4 E4 2232370
Q3 E5 881685
Q2 E8 100
Q2 E6 1144506
Q1 E7 4693094
Q6 E1 17275
Q6 E2 10475
Q8 E2 26200
Q7 E9 119430
Q9 E8 370070
預期輸出爲例如P5或E4(或基本上任何從見下表)節點將總是這樣:
SELECT * FROM [dbo].[FilteredPathsTbl]('E4')
Node1 Node2 TotalValue
D4 Q4 2232370
D5 Q5 861860
D6 Q6 27750
D8 Q8 26200
E1 P1 17275
E2 P1 36675
E3 P2 323400
E3 P1 242910
E4 P3 133070
E4 P4 834600
E4 P1 375800
E4 P5 888900
I13 R15 323400
I16 R15 1427130
P2 I13 323400
P3 I16 133070
P4 I16 834600
P1 I16 672660
Q5 E3 861860
Q4 E4 2232370
Q6 E1 17275
Q6 E2 10475
Q8 E2 26200
圖形表示:
需要幫助,因爲我沒有更多的頭髮拉;)
應該有SELECT * FROM [DBO] .FilteredPathsTbl之一('E4')不是SELECT * FROM [dbo] .FilteredPathsTbl – Pawel
你有一些你有「節點連接」的表嗎? – Veljko89
嗨Veljko89。我創建了SQLFiddle與節點之間的連接:http://sqlfiddle.com/#!6/78d07a/41有40個鏈接,目的是當例如'P4'被查詢時根據「圖形表示」返回ony 23 – Pawel