tagCANDY CGI VBレスキュー(花ちゃん) - 2つのデータテーブルの連結方法(DataGridView を使用)(VB.NET) - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
2つのデータテーブルの連結方法(DataGridView を使用)(VB.NET)
元に戻る スレッド一覧へ 記事閲覧
このページ内の検索ができます。(AND 検索や OR 検索のような複数のキーワードによる検索はできません。)

2つのデータテーブルの連結方法(DataGridView を使用)(VB.NET) [No.174の個別表示]
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.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

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

Page: 1 |

 投稿フォーム               スレッド一覧へ
題  名 スレッドをトップへソート
名  前
パスワード (記事メンテ時に使用)
投稿キー (投稿時 投稿キー を入力してください)
コメント

   クッキー保存   
スレッド一覧へ