如何将Sql查询转换为EF中的Linq
本文关键字:EF 中的 Linq 转换 查询 Sql | 更新日期: 2023-09-27 18:01:19
谁能告诉我如何使用EF编写linq查询?我的sql查询是
select * from
(select tr.Training_id,
tr.title,
tr.create_on,
tr.modified_on,
max(lo.created_on) as lastDate
from [trainig] tr
join [training_video_log] lo
on tr.Training_id = lo.fk_trainingvideo_resource_file
and lo.fk_user_id = 1050
group by tr.Training_id, tr.title, tr.create_on, tr.modified_on) X
Where modified_on > lastDate
这可能会帮助您如何开始选择数据
对于上面的查询,您正在寻找这样的内容:
var result = from tr in _db.Training
join lo in _db.Training_video_log
on tr.Training_id equals lo.fk_trainingvideo_resource_file
where lo.fk_user_id = 1050 &&
tr.modified_on > lastDate
group new { tr, lo }
by new { tr.Training_id, tr.title, tr.create_on, tr.modified_on } into gj
select new
{
TrainingId = gj.Key.Training_id,
Title = gj.Key.title,
CreateOn = gj.Key.create_on,
ModifiedOn = gj.Key.modified_on,
LastDate = gj.Max(item => item.lo.created_on)
};