복잡한 쿼리에서 linq를 사용하여 테이블을 다른 두 테이블에 조인하는 방법은 무엇입니까?

마누

여러 SQL 테이블에서 레코드를 수집하는 linq 쿼리를 작성하려고합니다. 테이블과 그 관계는 아래 이미지에 나와 있습니다. 테이블에서 기본 및 외래 키를 통해 이미 설정된 관계는 검은 색 선으로 표시됩니다. 빨간색 선은 레코드를 필요한 항목으로 제한하기 위해 쿼리에만 필요한 관계를 나타냅니다.여기에 이미지 설명 입력

다음은 linq 쿼리에 대한 최선의 시도이지만 예상대로 더 많은 레코드를 제공합니다 (관련되지 않은 레코드의 조합).

            var query = from wastewater in db.WasteWaters
                    join allowance in db.Allowances on wasterwater.WasteWaterId equals allowance.WasteWaterId
                    join chemical in db.Chemicals on allowance.ChemicalId equals chemical.ChemicalId
                    join sample in db.Samples on wastewater.WasteWaterId equals sample.WasteWaterId
                    join analysissample in db.Analyses on sample.SampleId equals analysissample.SampleId
                    join analysisallowance in db.Analyses on allowance.ChemicalId equals analysisallowance.ChemicalId

                    select new QueryModel
                    {
                        WasteWaterName =  wastewater.WasteWaterName,
                        SampleDescription = sample.SampleDescription,
                        Chemical = chemical.ChemicalName,
                        Result = analysis.AnalysisResult,
                        MaxAllowed = allowance.MaxAllowance
                    };
        return query;

중요한 점은 '분석'테이블을 '샘플' '허용'에 결합하는 것이라고 생각합니다 .

SQL로 내 db를 쿼리하면 (올바르게 수행해야 함) 결과가 linq 쿼리 결과와 다릅니다. 따라서 내 linq 쿼리에 문제가있는 것 같습니다. 해당 SQL 아래 :

SELECT WasteWaters.WastewaterName, Samples.SmplDescription, Chemicals.ChemicalName, Allowances.MaxAllowance, Analyses.Result
FROM ((Chemicals INNER JOIN (WasteWaters INNER JOIN Allowances ON WasteWaters.WasteWaterId = Allowances.WasteWaterId)
ON Chemicals.ChemicalId = Allowances.ChemicalId) INNER JOIN Samples ON WasteWaters.WasteWaterId = Samples.WasteWaterId)
INNER JOIN Analyses ON (Analyses.ChemicalId = Allowances.ChemicalId) AND (Samples.SampleId = Analyses.SampleId);

이 문제에 대한 도움을 주시면 감사하겠습니다.

NetMage

이것이 당신을 위해 작동합니까?

var ans = from c in Chemicals
          join a in Allowances on c.ChemicalId equals a.ChemicalId
          join w in WasteWaters on a.WasteWaterId equals w.WasteWaterId
          join s in Samples on w.WasteWaterId equals s.WasteWaterId
          join a2 in Analyses on new { a.ChemicalId, s.SampleId } equals new { a2.ChemicalId, SampleId = a2.SampleId.Value }
          select new QueryModel {
              WasteWaterName = w.WasteWaterName,
              SampleDesciption = s.SampleDescription,
              Chemical = c.ChemicalName,
              MaxAllowed = a.MaxAllowance,
              Result = a2.Result
          };

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

한 SQL 테이블에서 데이터를 복사하고 다른 두 번째 테이블에 새 항목을 만드는 방법은 무엇입니까?

분류에서Dev

문자 수를 세고 SQL 쿼리를 통해 다른 테이블에 삽입하여 한 열을 두 열로 분할하는 방법은 무엇입니까?

분류에서Dev

다른 두 테이블의 계산을 기반으로 한 테이블에서 데이터를 검색하는 방법은 무엇입니까?

분류에서Dev

한 테이블의 열 값이 MySQL을 사용하는 다른 테이블과 동일한 경우에만 두 테이블에서 데이터를 반환하는 방법은 무엇입니까?

분류에서Dev

두 테이블에 공통 열 데이터가있는 다른 테이블에 열 데이터를 복사하는 방법은 무엇입니까?

분류에서Dev

두 개의 다른 테이블에서 JSON 배열을 쿼리하는 방법은 무엇입니까?

분류에서Dev

Linq에서 다른 테이블의 두 값을 곱하는 방법은 무엇입니까?

분류에서Dev

값을 기준으로 테이블 1에서 모두를 선택한 다음 해당 테이블의 값을 사용하여 동일한 테이블에서 선택하는 방법은 무엇입니까?

분류에서Dev

3 개의 테이블에서 SQL로 두 개의 쿼리를 조인하는 방법은 무엇입니까?

분류에서Dev

동일한 필드를 두 번 더하지만 피벗 테이블에서 다른 합계 기준을 사용하는 방법은 무엇입니까?

분류에서Dev

복잡한 중첩 CASE WHEN-SELECT 문에서 하위 쿼리를 사용하거나 다른 테이블을 조인하는 것이 더 낫습니까?

분류에서Dev

한 테이블에서 다른 테이블로 레코드를 삽입하는 방법은 무엇입니까?

분류에서Dev

첫 번째 쿼리 ID가 다른 테이블에서 사용되는 한 번의 클릭으로 두 테이블에 데이터를 삽입하는 방법

분류에서Dev

Lua : 테이블에서 다른 테이블로 줄을 복사하는 방법은 무엇입니까?

분류에서Dev

html / jquery를 사용하여 HTML 테이블에서 두 개의 겹치는 색상에 다른 색상을 할당하는 방법은 무엇입니까?

분류에서Dev

laravel을 사용하여 한 테이블에서 다른 테이블로 복사하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블에서 여러 조인을 수행 한 다음 다른 테이블과 조인하는 방법은 무엇입니까?

분류에서Dev

Angular 6을 사용하여 json에서 복잡한 테이블을 만드는 방법은 무엇입니까?

분류에서Dev

한 테이블에 C #을 사용하여 MongoDB의 다른 테이블 ID 목록이 포함 된 두 테이블을 조인하는 방법

분류에서Dev

SQL Server에서 한 테이블의 여러 행에서 다른 테이블로 데이터를 복사하는 방법은 무엇입니까?

분류에서Dev

다른 테이블의 조인 쿼리에서 결과 값을 계산하는 방법은 무엇입니까?

분류에서Dev

한 테이블을 다른 테이블에서 업데이트하는 방법은 무엇입니까?

분류에서Dev

SQL에서 jon을 사용하여 두 테이블을 조인하는 방법은 무엇입니까?

분류에서Dev

R에서 두 개의 다른 테이블을 사용하여 테이블을 만드는 방법은 무엇입니까?

분류에서Dev

한 테이블에서 다른 테이블로 복사하기 위해 열 데이터를 분리하는 방법은 무엇입니까?

분류에서Dev

각 필드를 사용하여 한 테이블의 값을 다른 테이블에 삽입하는 방법

분류에서Dev

방법 : 한 테이블의 한 열을 다른 테이블의 두 열에 조인 하시겠습니까?

분류에서Dev

psql에서 외래 키 제약 조건을 사용하여 한 테이블의 구조를 다른 테이블에 복사하는 방법은 무엇입니까?

분류에서Dev

한 쿼리에서 두 테이블의 행을 계산하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    한 SQL 테이블에서 데이터를 복사하고 다른 두 번째 테이블에 새 항목을 만드는 방법은 무엇입니까?

  2. 2

    문자 수를 세고 SQL 쿼리를 통해 다른 테이블에 삽입하여 한 열을 두 열로 분할하는 방법은 무엇입니까?

  3. 3

    다른 두 테이블의 계산을 기반으로 한 테이블에서 데이터를 검색하는 방법은 무엇입니까?

  4. 4

    한 테이블의 열 값이 MySQL을 사용하는 다른 테이블과 동일한 경우에만 두 테이블에서 데이터를 반환하는 방법은 무엇입니까?

  5. 5

    두 테이블에 공통 열 데이터가있는 다른 테이블에 열 데이터를 복사하는 방법은 무엇입니까?

  6. 6

    두 개의 다른 테이블에서 JSON 배열을 쿼리하는 방법은 무엇입니까?

  7. 7

    Linq에서 다른 테이블의 두 값을 곱하는 방법은 무엇입니까?

  8. 8

    값을 기준으로 테이블 1에서 모두를 선택한 다음 해당 테이블의 값을 사용하여 동일한 테이블에서 선택하는 방법은 무엇입니까?

  9. 9

    3 개의 테이블에서 SQL로 두 개의 쿼리를 조인하는 방법은 무엇입니까?

  10. 10

    동일한 필드를 두 번 더하지만 피벗 테이블에서 다른 합계 기준을 사용하는 방법은 무엇입니까?

  11. 11

    복잡한 중첩 CASE WHEN-SELECT 문에서 하위 쿼리를 사용하거나 다른 테이블을 조인하는 것이 더 낫습니까?

  12. 12

    한 테이블에서 다른 테이블로 레코드를 삽입하는 방법은 무엇입니까?

  13. 13

    첫 번째 쿼리 ID가 다른 테이블에서 사용되는 한 번의 클릭으로 두 테이블에 데이터를 삽입하는 방법

  14. 14

    Lua : 테이블에서 다른 테이블로 줄을 복사하는 방법은 무엇입니까?

  15. 15

    html / jquery를 사용하여 HTML 테이블에서 두 개의 겹치는 색상에 다른 색상을 할당하는 방법은 무엇입니까?

  16. 16

    laravel을 사용하여 한 테이블에서 다른 테이블로 복사하는 방법은 무엇입니까?

  17. 17

    동일한 테이블에서 여러 조인을 수행 한 다음 다른 테이블과 조인하는 방법은 무엇입니까?

  18. 18

    Angular 6을 사용하여 json에서 복잡한 테이블을 만드는 방법은 무엇입니까?

  19. 19

    한 테이블에 C #을 사용하여 MongoDB의 다른 테이블 ID 목록이 포함 된 두 테이블을 조인하는 방법

  20. 20

    SQL Server에서 한 테이블의 여러 행에서 다른 테이블로 데이터를 복사하는 방법은 무엇입니까?

  21. 21

    다른 테이블의 조인 쿼리에서 결과 값을 계산하는 방법은 무엇입니까?

  22. 22

    한 테이블을 다른 테이블에서 업데이트하는 방법은 무엇입니까?

  23. 23

    SQL에서 jon을 사용하여 두 테이블을 조인하는 방법은 무엇입니까?

  24. 24

    R에서 두 개의 다른 테이블을 사용하여 테이블을 만드는 방법은 무엇입니까?

  25. 25

    한 테이블에서 다른 테이블로 복사하기 위해 열 데이터를 분리하는 방법은 무엇입니까?

  26. 26

    각 필드를 사용하여 한 테이블의 값을 다른 테이블에 삽입하는 방법

  27. 27

    방법 : 한 테이블의 한 열을 다른 테이블의 두 열에 조인 하시겠습니까?

  28. 28

    psql에서 외래 키 제약 조건을 사용하여 한 테이블의 구조를 다른 테이블에 복사하는 방법은 무엇입니까?

  29. 29

    한 쿼리에서 두 테이블의 행을 계산하는 방법은 무엇입니까?

뜨겁다태그

보관