別のテーブルから列の値をルックアップし、後でwhere句で新しくルックアップした値を使用しようとしています。たとえば、次の表があります
ID Name
1 Jan
2 Feb
3 March
Product Customer Start End
A C Feb March
A B Jan March
B C March Jan
上記の例では、開始IDが終了IDよりも大きいレコードのリストを照会する必要があります。たとえば、BC-3月-1月は私が探しているレコードです。参加を使用する必要がありますか?また、可能であれば、クエリ構文が非常に役立ちます。
私の質問:
var vInvalidStartEnd = from p in vRecords
where (from t in vTimePeriods where t.Name == p["Start"] select t.TID).First().Cast<int>() > (from t in vTimePeriods where t.TName == p["End"] select t.ID).First().Cast<int>()
select new
{
Product = p["Product"],
Location = p["Location"],
Start = p["Start"],
End = p["End"]
};
ありがとう