0
TableB에서 관련 요소가없는 TableA의 요소를 검색 할 때 이점이 있습니까? 나는 왼쪽 외부로 이렇게 사용 해요GroupJoin 대 null 관련 항목을 필터링하는 위치
TableA
.GroupJoin(
TableB,
o => o.TableAID,
i => i.TableAID,
(o,i) => new {o, child = i.DefaultIfEmpty()})
.Where(x => x.child.Where(c => c != null).Count() == 0)
.Select(x => x.o);
또는
TableA
.Where(a => !TableB.Select(b => b.TableAID).Contains(a.TableAID));
는 용도되는 첫 번째 예 종류, SQL에 가입 할 수 있습니다. 두 번째 예제는 "NOT IN"유형의 접근 방식을 사용합니다.이 방식은 이전에 사용한 적이 없습니다.
두 방법 모두 동일한 데이터를 반환합니다. 두 번째는 단순성 관점에서 선호하는 것입니다. 첫 번째 장점은 있습니까?
다른 방법이 있습니까?