나는 이미 SO를 통해 검색했으며 이에 대한 실행 가능한 해결책을 찾을 수 없습니다. 나는 Linq에서 Entities에 대한 여러 내부 조인 구문이 무엇인지 파악하려고합니다. 감사합니다Linq에서 엔티티에 여러 내부 조인을 수행하는 방법
답변
모델의 코드가 중복되기 때문에 Jon의 대답은 작동하지만 IMHO using join in LINQ to Entities is usually wrong입니다. 내가 L2E에 훨씬 간단한 방법으로 존의 쿼리를 다시 작성할 수 있습니다 :
타이핑의 약 50 %와 중복 된 코드의 0 %의var query = from customer in db.Customers
from order in customer.Orders
from product in order.Products
from info in product.Info
select new
{
customer.Name,
info.BriefDescription
}
. 관계가 DB와 모델에 이미 정의되어 있다고 생각하십시오. 작성한 모든 쿼리에서 다시 복제하고 싶고 모델을 리팩터링 할 때 쿼리를 중단해야합니까?
글쎄, 나는 특히 엔티티에 LINQ를 모르겠지만, 일반 LINQ 구문은 다음과 같습니다
var query = from customer in db.Customers
join order in db.Orders on customer.ID equals order.ID
join product in db.Products on order.ProductID equals product.ID
join info in db.Info on product.InfoID equals info.ID
select new { customer.Name, info.BriefDescription };
(즉, 단지 몇 join
조항).
이제 이미 시도한 것으로 의심됩니다. 그렇다면 무엇이 잘못 되었습니까?
실제로 작동하지만, L2E의 특정 경우에 조인 대신 관계를 사용하는 것이 더 좋은 방법이라고 생각합니다. –
두 개의 주어진 Info-entities로 시작하는 경우 ('info from db.Info where info ... join product ...'), 명시 적으로 작성된 조인이 더 효율적이지 않은 경우는 어떨까요? ? 또는 EF에서 중요하지 않으며'고객의 db.Customers의 고객 주문. 주문 상품의 순서. 제품 정보의 제품. 정보의 info ... '와 마찬가지로 효율적입니까? – j00hi
@ j00hi : 기본적으로 생성되는 SQL을 살펴 봐야합니다. –
- 1. Linq에서 엔티티에 왼쪽으로 조인
- 2. LINQ에서 STAR 검색을 수행하는 방법
- 3. Django : 모델 상속에서 내부 조인을 줄이는 방법?
- 4. EF에서 내부 조인을 반환하십시오.
- 5. 전체 외부 조인을 사용하지 않고 전체 외부 조인을 수행하는 방법
- 6. 비 구분 필드에서 내부 조인을 수행하는 이유는 무엇입니까?
- 7. Linq - ForEach 문에서 조인을 수행하는 방법?
- 8. NHibernate에 대한 LINQ를 사용하여 조인을 수행하는 방법
- 9. Linq를 사용하여 "복잡한"조인을 수행하는 방법
- 10. Entity 프레임 워크에서 왼쪽 조인을 수행하는 방법?
- 11. 대량 삽입 - 엔티티에 Linq을 수행하는 방법
- 12. 내부 svn : externals을 수행하는 방법
- 13. R에서 내부 검사를 수행하는 방법
- 14. Defaultifempty 엔티티에 linq에서 작동하는 것 같다
- 15. 왜이 쿼리는 엔티티에 대한 linq에서 지원되지 않습니까?
- 16. NHibernate의 HQL을 사용하여 여러 개의 내부 조인을 가진 쿼리 만들기
- 17. linq에서 sql으로 여러 업데이트 작업하는 방법?
- 18. 레일스 내의 AREL에서 서브 쿼리에 대한 조인을 수행하는 방법
- 19. ttwo 테이블을 사용하여 조인을 수행하는 방법은 무엇입니까?
- 20. Javascript를 사용하는 Account 이외의 엔티티에 CRUD 작업을 수행하는 방법
- 21. EF- 엔티티에 Linq를 사용하여 'Not In'을 수행하는 방법
- 22. NHibernate 객체를 수화하지 않고 Criteria 내부 조인을 만드는 방법?
- 23. 같은 세부 테이블에 내부 조인을 반복적으로 사용하는 방법
- 24. 언제 내부 조인을 사용하고 서브 쿼리를 사용해야합니까?
- 25. SQL - 왼쪽 조인과 내부 조인을 함께 사용
- 26. linq는 내부 조인과 외부 조인을 어떻게 결정합니까
- 27. Pro * C 10g에서 조인을 사용하는 방법?
- 28. Linq에서 SQL로 DeleteAllOnSubmit을 수행하는 방법은 무엇입니까?
- 29. 생성 된 테이블에 조인을 바꿀 엔티티에 대한 LINQ
- 30. 여러 조인을 사용하여 쿼리에서 jqgrid로드
와우. 좋은 지적 – user161433
@Craig - 나는 몇 시간 전에 내가 여기서 본 것을 이해하고 싶다. 내가 놓친 것은 "고객의 주문에서. 오더"였습니다. "db의 주문에서. 주문"과 완전히 다른 것을하고있었습니다. 그래도 고마워. – chris
이것은 쿼리에 교차 조인을 생성합니다 ... – dudeNumber4