複数の列を持つテーブルでグループ化しようとしており、グループ化カウントが2に等しいかどうかを確認しています。この部分に対してクエリが機能しています。
var query = from product in Products
group by new { product.Product, product.Location, product.Customer } into grp
where grp.Count() != 2
製品には、「高」と「低」の2つの値しか持てない別のプロパティカテゴリがあります。グループ化カウントに加えてカテゴリのチェックを処理するようにこのクエリを変更するにはどうすればよいですか。
Product Location Customer Category
A X C1 High
A X C1 Low
A Y C1 High
A Y C1 Low
A Y C1 Low
B X C1 High
B X C1 Medium
上記の例では、ロケーションXの製品Aと顧客C1を除いて、他のすべてのレコードは無効です。ロケーションYには2つの安値があり、製品Bにはリストに含まれていないカテゴリ中(高と低)があります。