如果我有一個表,看起來像這樣:如何將列轉換爲行
ID int
Name varchar
City1 varchar
City2 varchar
City3 varchar
State1 varchar
State2 varchar
State3 varchar
我明白了一個正常的SELECT語句將返回的數據是這樣的:
ID, Name, City1, City2, City3, State1, State2, State3
但我怎麼返回SELECT語句返回多個城市/國家到不同行,並把它們組...所以它看起來像這樣:
ID, Name, City, State
而不是這些列:Color1,Color2,Color3和State1,State2,State3
如果所有其他數據保持不變,則它們將只是更多的行,如果1,2,3不爲空。
關於如何使用最少的代碼來處理這個問題的任何建議?最好是一個處理這一切的SELECT語句?
可能重複[SQL服務器?我可以用逗號分隔多行合併到一列(http://stackoverflow.com/questions/2046037/sql-server-can-i-comma-delimit-multiple -row-into-one-column) –