2011-11-14 43 views
1

列名是否有可能創建一個臨時表與另一個表中的數據命名從一列例如列 -創建臨時表與其他表列數據

singleColumn 
-data1 
-data2 
-data3 
-data4 

再從這個創建一個臨時表像 -

data1 | data2 | data3 | data4 

編輯:

我有一個可以有0從人口統計學表無論人口統計的用戶。連接將爲用戶返回幾行。我需要將這些數據加入1行,以便將這些數據存儲在CSV文件中。

+0

是的。但你會對類型做些什麼? –

+0

@stuartainsworth所有將是nvarchar –

回答

0

不要認爲它可能以我想要的方式返回數據,因此最終只能用2個DataTable進行操作。

1
declare @dynamicSql varchar(1000) 
set @dynamicSql = 'create table #yourTempTable (' 

select @dynamicSql += yourDataCol + ' nvarchar(100) not null, ' 
from TestTempTables 

set @dynamicSql = LEFT(@dynamicSql, len(@dynamicSql) - 1) + ')' 

exec(@dynamicSql) 
+0

列數量將是隨機的。可能是5或10或15.我該如何處理? –

+0

如何隨機?如果你想要排名前5的話,你可以選擇「前5名......」。不過,您必須相應地對查詢進行排序。你能指定何時/如何/你想從該列中選擇什麼? – 2011-11-14 01:40:55

+0

不同的用戶屬於不同的公司,並取決於公司如何設置人口統計。因此,一家公司可以選擇爲該用戶做10個人口統計數據,另一家公司可以做20個。但最終我需要將結果作爲1行返回,而不是很多,所以我可以將結果保存到csv文件。它要麼或我會在c#代碼中完成 –