Здесь я пытаюсь оценить условие максимальной даты (самой последней даты) и для этого я думаю, что я мог бы использовать функцию MAX ().
С точки зрения синтаксиса я не могу найти правильный путь. Здесь ниже мой запрос.
var sfcStatusQuery = (from Carrier in _orgContext.CreateQuery("account")
join SafetyFitnessCert in _orgContext.CreateQuery("mot_safetyfitnesscertificate")
on Carrier["accountid"] equals SafetyFitnessCert["mot_carriernumber"]
where (SafetyFitnessCert["mot_expirydate"] == null && (int)SafetyFitnessCert["statecode"] == 0)
where SafetyFitnessCert.FormattedValues["new_sfcstatusname"].ToString().Equals("Suspended")
where ((int)Carrier["statecode"] == 0 && Carrier["mot_number"].Equals(carrierNumber))
//where SafetyFitnessCert["mot_lastreviseddate"]
select new
{
SafetyCertSuspFlag = "Y"
}).FirstOrDefault();
В приведенном выше запросе комментируется условие условия, которое я пытаюсь исправить с помощью агрегатной функции MAX. Поскольку этот запрос может содержать / не содержать более одной записи со статусом «Приостановлено» для определенного номера оператора.
Пожалуйста, сообщите.