2009-11-26 123 views
-2

比方說,我有Datatable1有「Colum1」,「colum2」 和另一個表,Datatable2與「Colum3」,「colum4」2數據表1

我需要創建Datatable3將包含所有列「Colum1」,「colum2」,「Colum3」,「colum4」

我需要一些聰明的東西,比如爲一個表執行的DefaultView.ToTable()方法。

感謝

+0

你怎麼能指望加入行?如何確定Datatable1中的哪一行與Datatable2匹配? – Kitson 2009-11-26 07:39:29

+0

我有一個PrimaryKey – 2009-11-26 07:40:59

+0

這兩個表?每個表中的哪一列是主鍵? – Kitson 2009-11-26 07:51:40

回答

0

當你沒有提到任何語言或數據庫服務器類型,這裏的SQL Server上的東西,可能工作(沒有測試真)2005年:

CREATE TABLE #temp (col1 <type>, col2 <type>, col3 <type>, col4 <type>) 
INSERT INTO #temp 
(
    SELECT t1.Column1, t1.Column2, t2.Column3, t2.Column4 
    FROM Datatable1 t1 INNER JOIN Datatable2 t2 ON t2.<PrimaryKeyField> = t1.<PrimaryKeyField> 

    UNION 

    SELECT t1.Column1, t1.Column2, t2.Column3, t2.Column4 
    FROM Datatable2 t2 INNER JOIN Datatable1 t1 ON t1.<PrimaryKeyField> = t2.<PrimaryKeyField> 
) 

SELECT * FROM #temp 
+0

你好。對不起,我的意思是.net對象Datatable。我想在c#代碼中執行它,而不是在數據庫級別。 – 2009-11-26 09:07:31