エンティティデータモデルに2つのテーブルがあります(古いデータベースから変換されました)
エンティティ1:Food_I_Have_In_Fridge:
Food | Category
---------------
Apple | Fruit
Beef | Meat
Tomato| Veggie
Pork | Meat
Bacon | Meat
Orange| Fruit
Carrot| Veggie
エンティティ2:Food_I_ate:
Date | Food
------------
01/01| Apple
01/01| Beef
01/02| Pork
01/03| Orange
01/04| Tomato
私が最後に食べたもののリストを食品カテゴリ別に生成したいと思います。出力は次のようになります。
Categ| Food
-----------
Meat | Pork
Fruit| Orange
Veggi| Tomato
以下に同等のSQLコードがありますが、SQLを完全に廃止しているため、EntityFrameworkを使用して次のことを実現しようとしています。
with FW as (
select a.[Date], f.category, a.food, a.date
from
[Food_I_ate] a
inner join
[Food_I_Have_In_Fridge] f on a.Food = f.Food
)
select
FW2.category,
FW2.Food,
FW2.Date
from
(select FW.category, max(fw.ix) as maxix
from FW group by FW.category) FW
inner join
FW FW2 on FW2.ix = FW.maxix and FW2.category = FW.category
エンティティフレームワークを使用してこれを実現する方法を考えていましたか?