2009-03-09 12 views
5

XMLデータセットに2つのテーブルがあります。 T1、T2。各テーブルにはID列があります。LINQを使用した内部結合の反対のクエリのヘルプ

T1は T2は、私が注文を持っていない顧客のIDのみを返すLINQクエリを構築したい受注

のリストを持っている顧客のリストを持っています。つまり、T2テーブルに存在しない顧客IDです。

いやああ、私はC#

感謝を使用しています!

答えて

6

を:

var query = from c in T1 
      where !(from o in T2 select o.CustomerID) 
      .Contains(c.CustomerID) 
      select c; 
+0

うわー - それは簡単でした!助けをありがとう – Rick

1

あなたはちょうど私達にwhere句と、すべての必要があります:私は(あなたのデータセットに適応してください)これが機能すると思います

T1.Where(item1 => T2.All(item2 => item1.ID != item2.ID)); 
+0

このように見えますか?助けてくれてありがとう。 – Rick

7

これは、外部結合とチェックが必要ですヌルに。

var result = from c in Customers 
      join d in Details on d.CustomerID equals c.ID into g 
      where !g.Any() 
      select c; 
+0

これは受け入れられた答えより速いようです – Stefanvds

関連する問題