在TSQL我怎麼可以把這個示例表:TSQL - 創建基於字段值列和複製行
ID FIELDNO ROWNO VALUE
ABC 2 1 Cat1Val1
ABC 2 2 Cat1Val2
ABC 2 3 Cat1Val3
ABC 3 1 Cat2Val1
ABC 3 2 Cat2Val2
ABC 5 1 Cat3Val1
到將創建一個基於fieldno三列的表格,複製行,以便它列出了哪個fieldno具有最高rowNo的所有可能的變體?
所以fieldno 2將成爲CAT1,3 - > CAT2和5 - > CAT3
預期結果:
ID CAT1 CAT2 CAT3
ABC Cat1Val1 Cat2Val1 Cat3Val1
ABC Cat1Val1 Cat2Val2 Cat3Val1
ABC Cat1Val2 Cat2Val1 Cat3Val1
ABC Cat1Val2 Cat2Val2 Cat3Val1
ABC Cat1Val3 Cat2Val1 Cat3Val1
ABC Cat1Val3 Cat2Val2 Cat3Val1
然後我可以以此爲基礎的加盟與其他表。
這裏是一個fiddle與更多的數據。
我試圖創建一些CASE WHEN子句,但我認爲這是行不通的。
希望你能告訴我如何解決這個問題。
謝謝。
你能解釋一下爲什麼你需要在這個格式的數據?看起來非常不尋常的是,你將首先用這種方式去規範化,然後加入到其他表中。 –