2010-12-15 15 views
0

2つのデータテーブルDT1DT2を持っていて、各テーブルには1つの行しかないものとします。
2つのデータセットを1つのテーブルに結合するにはどうすればよいですかDT3?一例として
DT1は2列FirstN
DT2LastNが2列salaryがあり、そのためDT3
currencyがありますがありFirstNLastNsalaryCでデータテーブルを結合する方法

+0

):のhttp:// support.microsoft.com/kb/326080/en-us –

答えて

0

currencyまずDT1とDT2と追加からすべての列を取得しますdt3の列を追加した後のdt3の dt1とdt2のforループを使用して値を挿入して、これらのデータテーブルから各行を取得し、既にこれらのデータテーブルにある列の名前を使用してspe cific値。

あなたがデータテーブル

に値を挿入する方法を取得します。このリンクで

http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx

マーク私の答えとあなたが私の答えからソリューションを得れば私を指します。

1

これを試してみてください。これは正確にMergeの意図されたユースケースではありませんが、私はそれがちょうどこの場合にうまくいくと思います。

DT1.Merge (DT2, true, MissingSchemaAction.Add) 

注:これまでこれを行っていません。しかし、私はどのようにMergeが実装されていることに基づいて考える、これを行うことで離れて得ることができるかもしれません。スキーマが変更された可能性があるので、マージメソッドが呼び出されるMSDN から

は二つのDataTableオブジェクトのスキーマは、比較されます。ソースDataTableに、ターゲットに欠落しているスキーマ要素(追加されたDataColumnオブジェクト)が含まれている場合、missingSchemaAction引数をMissingSchemaAction.Addに設定することによって、スキーマ要素をターゲットに追加できます。その場合、マージされたDataTableには追加されたスキーマとデータが含まれます。

+0

ちょうどこれをテストしなければならなかった、それは動作します...非常にいい:) –

関連する問題