다음 쿼리를 수행하는 데 LINQ to Entities를 어떻게 사용합니까?LINQ 버전의 최대 및 그룹을 사용하는 하위 쿼리
동일한 ID를 가진 테이블에 여러 항목이 있으므로 최대 ID 값을 가진 각 ID 중 하나만 입력하면됩니다. 또한 dateValue에는 시간 구성 요소가 밀리 초 단위로 포함되어 복제되지 않습니다.
은 내가 context.tableName.Any()
방법을 사용하거나 선택 부분 내부에 쿼리를 추가함으로써 그러나 나는 여전히 하위 쿼리로 작업 할 수 있습니다 읽은 IN
키워드를 지원하지 않는 엔티티에 LINQ를 알고있다.
Using context = ContextProvider.GetContext()
Dim table = context.tableName
Dim query = _
From rows In table _
Select New ClassName With _
{ _
.Id = rows.Id, _
.Value1 = rows.Value1, _
.Value2 = rows.Value2, _
.DateValue = rows.DateValue _
}
Return query.ToList()
End Using
내가 원하는 것을 얻을 쿼리에
Where table.Any(...
, 또는 선택의
.DateValue = subquery
을가할지 잘 모르겠어요, 위의 주어진. 그리고 어느 상황에서든 표현식의 형식을 지정하는 방법을 모르겠습니다.
왜 MAX (dateValue)를 원한다면 하위 쿼리에서 ID별로 그룹화 하시겠습니까? MAX (dateValue)를 사용하여 ID 당 최고 1 레코드를 원하십니까? 그런 다음 SQL 쿼리가 올바르지 않습니다. –
예, 동일한 ID를 가진 항목이 여러 개 있습니다. 해당 ID의 날짜가 가장 큰 ID 당 1 개의 항목 만 입력하면됩니다. –
테이블의 기본 키는 무엇입니까? –