0

プロフェッショナルの皆様、こんにちは。

現在、私は 1 つのクエリで立ち往生しており、問題に対する適切な解決策が得られていません。これが問題です。

     表 1 表 2
   Form_id フォーム番号 フォーム番号 フォーム タイプ
    1 10 10 101
    1 10 20 201   
    1 10 10 301   
    2 20 10 401
    3 30 30 501

これら 2 つのテーブルを結合して、一意の Form_Id を見つける必要があります。2 つのテーブル間に親子関係はありません。interesect 関数を使用して LINQ クエリを試していましたが、目的の出力を取得できませんでした。

望ましい出力:

Form_Id フォーム No フォーム タイプ
1 10 101       
2 20 201
3 30 501  

私が試したコード:

var result=(from t1 in DBContext.table 1 
            join t2 in DBContext.table 2 on t1.FormNo equals t2.FormNo 
            Where FormTypeList.Contains(t2.FormType) 
            Select new { Form_Id=t1.Form_Id, 
                         FormNo=t2.FormNo, 
                         FormType=t2.FormType 
            }).ToList();

ありがとうございます。

4

1 に答える 1

0

クエリの後に平手打ちするだけDistinctで問題ありません。

var result= (from t1 in DBContext.table1 
             join t2 in DBContext.table2 on t1.FormNo equals t2.FormNo 
             Where FormTypeList.Contains(t2.FormType) 
             Select new 
             { 
                Form_Id  = t1.Form_Id, 
                FormNo   = t2.FormNo, 
                FormType = t2.FormType 
             }).Distinct().ToList();
于 2013-06-24T12:44:09.540 に答える