|
■No53128 (kz さん) に返信
> 表示処理の際に複数のテーブルの情報を結合して
> 取得したい箇所があるのですが、
> それぞれのDataTableに各テーブルの情報を格納後、
> 結合することは可能でしょうか?
> (SQLでいうINNER JOINのような動きをしたい)
いろいろな方法があると思いますが、たとえば:
(案1) DataSet の Relation を用いて結合する。
(案2) Linq を使って処理する。
(案3) 自前でループ処理。
案1 の例:
【tbl1】キー: 日付, 額面
日付 額面 枚数
----- ----- ----
09/03 1000 4
09/03 5000 3
09/03 10000 8
【tbl2】キー: 額面
額面 肖像
----- ---------
1000 野口英世
2000 紫式部
5000 樋口一葉
10000 福澤諭吉
tbl1 と tbl2 は、共に同一 DataSet に所属しているとします。
この場合、
ds.Relations.Add("TEST", tbl2.Columns("額面"), tbl1.Columns("額面"))
tbl1.Columns.Add("肖像", GetType(String), "Parent.肖像")
とすると、tbl1 の内容が、
日付 額面 枚数 肖像
----- ----- ---- ---------
09/03 1000 4 野口英世
09/03 5000 3 樋口一葉
09/03 10000 8 福澤諭吉
となります。
|