2009-10-22 7 views
0
select colId, 
     colTaskType, 
     MaxID 
from tblTaskType 
join (
     select tblCheckList.colTaskTypeID, 
       max(colItemNumber) MaxID 
     from tblCheckList 
     group by colTaskTypeID 
     ) x on coltaskTypeID = tblTaskType.colID 

답변

0

linq-to-sql을 사용하고 있으며 datacontext에 두 개의 테이블이 있다고 가정합니다.

var maxChecks = from checks in DataContext.tblChecklist 
       group checks by checks.colTaskTypeID into g 
       select new { colTaskTypeID, max = g.Group.Max(x => x.colItemNumber) }; 

var result = from t in DataContext.tblTaskType 
      join c in maxChecks on t.colTaskTypeID equals c.colTaskTypeID 
      select new { t.colId, t.colTaskTypeID, c.max }; 

하지만 당신은 시도 할 수 :

더 또는 덜 정확한 번역이 될 것

var result = from t in DataContext.tblTaskType 
      select new { 
        t.colId, 
        t.colTaskTypeID, 
        Max = (from c in DataContext.tblChecklist 
          where c.colTaskTypeID == t.colTaskTypeID 
          select c.colItemNumber).Max() };