var NewistRows = from ff in LinkToSQL.JobNumberList from gg in LinkToSQL.M1_Test let tt = ( from g in LinkToSQL.M1_Test group g by g.PartNumber into ss select new { ss.Key, max = ss.Max(p => p.Times) } ) from t in tt where ff.jobNumber == messages[1].ToString() && ff.isDelete == false && ff.jobNumberID == gg.FK_JobNumber && gg.PartNumber == t.Key && gg.Times == t.max select gg;