私はこのようなテーブルを持っています:
| FruitID | BasketID | FruitKind | HarvestTime |
| 23 | 2 | 6 | 1/13/2013 |
| 24 | 2 | 3 | 1/19/2013 |
| 25 | 5 | 4 | 1/21/2013 |
| 26 | 5 | 3 | 1/31/2013 |
| 27 | 5 | 6 | 2/3/2013 |
特定のリストにあるすべての果物をクエリしBasketID
、結果をでグループ化しBasketID
、各グループ内で最後を見て、3または4の果物を含むHarvestTime
すべての果物のリストを返します(FruitKindは値を持つことができます) 1から8の間)。たとえば、2と5を渡すと、最新の24には3があり、5には27があり、種類6であるため、2は元に戻ります。BasketIDs
FruitKind
BasketID
BasketID
FruitID
FruitKind
BasketID
FruitID
これは私が立ち往生しているところです:
var TheQuery = (from a in MyDC.TableFruits
where TheListOfBasketIDs.Contains(a.BasketID)
group a by a.BasketID into g
where .... "latest FruitID has FruitKind == to 3 || 4"
select g.Key).ToList();
最新のFruitのFruitKindをテストできるように、各グループ内でHarvestTimeを注文する必要があります。あなたの提案をありがとう。