【C#】LINQにて左外部結合をする方法

LINQjoin句。

てっきりLEFT OUTER JOINだと思ってたら、どうやらINNER JOINっぽい。
なんでやねん。

ということでLINQを使った左外部結合(LEFT OUTER JOIN)をする方法。

LINQでのLEFT OUTER JOIN

以下、サンプルソース。

var query = from ta in TableA
  join tb in TableB
  on ta.ID equals tb.subID into temp
  from t in temp.DefaultIfEmpty()
  select new
  {
    ta.ID,
    Name = t.Name ?? String.Empty,
    Age = t?.Age ?? 0
  };

う~ん、ややこしい。

投稿者: Output48

中学生の時に初めてHTMLに触れてからホームページ制作を独学で始める。 ベンチャー企業の営業、大手企業のSEを経て、独立。 ここ数年はWEB以外の仕事をしていたため、割と本気で勉強中。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください