Как перевести этот запрос GROUP BY/MIN SQL в LINQ?
Я планирую использовать это в подзапросе, но не могу определить правильный синтаксис для перевода следующего запроса в LINQ:
select ChapterID, min(MeetingDate)
from ChapterMeeting
group by ChapterID
Ответ 1
var query = myDataContext.ChapterMeeting
.GroupBy(cm => cm.ChapterID)
.Select(g => new {
g.Key,
MinMeetingDate = g.Min(cm => cm.MeetingDate)
});
Ответ 2
Хорошо, Эми опередила меня, но на случай, если вы захотите увидеть это с синтаксисом "понимания":
var q = (
from cm in context.ChapterMeeting
group cm by cm.ChapterID into cmg
select new {
ChapterID = cmg.Key,
FirstMeetingDate = cmg.Min(cm => cm.MeetingDate)});