tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
2つのデータテーブルの連結方法(DataGridView を使用)(VB.NET) ( No.0 )  [親スレッドへ]
日時: 2008/02/11 21:11
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[データベース][グリッド関係][]                                      *
* キーワード:DataGridView,マージ,データグリッドビュー,DataTable,結合,            *
***********************************************************************************
記事No : 5716
投稿日 : 2007/06/25(Mon) 23:06
元質問 : びぎ  

データテーブルの連結について教えて下さい。
訳あってSELECT ・・のLEFT OUTER JOIN が5つまでしか使えずデータテーブルを2つに
分けてしまいました。
その2つのデータテーブルをある項目で判断し1つのデータテーブルにしたいのですが
このようなことはできますか?

例としまして1つ目のデータテーブル
HIN , CODE1 , CODE2

2つ目のデータテーブル
HIN , CODEME1 , CODEME2

とあった場合
HIN , CODE1 , CODEME1 , CODE2, CODEME2
というデータテーブルにしたいのです。

-----------------------------------------------------------------------------------
記事No : 5717
投稿日 : 2007/06/25(Mon) 23:21
投稿者 : 魔界の仮面弁士  
-----------------------------------------------------------------------------------
DataTable の Merge メソッドを使うとか。

Private Sub Form1_Load(ByVal sender As System.Object, _
                       ByVal e As System.EventArgs) Handles MyBase.Load
   Dim table1 As New DataTable()
   table1.Columns.Add("HIN")
   table1.Columns.Add("CODE1")
   table1.Columns.Add("CODE2")
   table1.Rows.Add("100", "101", "102")
   table1.Rows.Add("110", "111", "112")
   table1.Rows.Add("300", "121", "142")
   table1.Rows.Add("310", "131", "152")
   table1.PrimaryKey = New DataColumn() {table1.Columns("HIN")}
   table1.AcceptChanges()

   Dim table2 As New DataTable()
   table2.Columns.Add("HIN")
   table2.Columns.Add("CODEME1")
   table2.Columns.Add("CODEME2")
   table2.Rows.Add("200", "201", "202")
   table2.Rows.Add("210", "211", "212")
   table2.Rows.Add("300", "221", "242")
   table2.Rows.Add("310", "231", "252")
   table2.PrimaryKey = New DataColumn() {table2.Columns("HIN")}
   table2.AcceptChanges()

   '★ Merge メソッドで結合 ★
   Dim table0 As New DataTable()
   table0.Merge(table1)
   table0.Merge(table2)
   'table0.Columns("CODEME1").SetOrdinal(2)

   DataGridView1.DataSource = table0
End Sub

 上記実行結果の図(画像をクリックすると元のサイズで見られます)



 [スレッド一覧へ] [親スレッドへ]