彙總視圖我有一個sql-server 2012
表看起來像這樣:噸-SQL需要從分層數據
lvl | keywords
-----|------------
A | null
A1 | null
A1.1 | red, green
A1.2 | blue
A1.3 | orange, yellow
A2 | null
A2.1 | brown
A2.2 | black, purple
B | null
B1 | null
B1.1 | pink
B1.2 | velvet, orange
B2 | null
B2.1 | cyan
B2.2 | purple, white
etc.
我需要捲起的關鍵字到較高水平的圖。因此,頂層A必須全部從那裏柱拉特與A級A1開始基礎記錄的關鍵字應該都從那裏柱拉特與A1等,所以這種觀點的輸出應爲開始記錄的關鍵字:
lvl | keywords
-----|------------
A | red, green, blue, orange, yellow, brown, black, purple
A1 | red, green, blue, orange, yellow
A1.1 | red, green
A1.2 | blue
A1.3 | orange, yellow
A2 | brown, black, purple
A2.1 | brown
A2.2 | black, purple
B | pink, velvet, orange, cyan, purple, white
B1 | pink, velvet, orange
B1.1 | pink
B1.2 | velvet, orange
B2 | cyan, purple, white
B2.1 | cyan
B2.2 | purple, white
etc.
如何在T-SQL
中做到這一點? (sql-server 2012)
您將需要大量的字符串處理的做到這一點。如果您可以重新設計您的表格,請爲每個級別設置一些列。所以你的表格將有 - Level1,Level2,Level3,關鍵字作爲列。 在選擇,做3個查詢的工會 - 每個分組的關鍵字在每個級別。合併結果並在刪除重複項後進行最終選擇。 – ArunGeorge