> 백엔드 개발 > C++ > LINQ를 사용하여 C#에서 두 DataTable의 내부 조인을 수행하는 방법은 무엇입니까?

LINQ를 사용하여 C#에서 두 DataTable의 내부 조인을 수행하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2025-01-12 17:21:43
원래의
834명이 탐색했습니다.

How to Perform an Inner Join of Two DataTables in C# using LINQ?

DataTable 내부 연결에 C# LINQ 사용

내부 조인은 공통 키를 기반으로 두 DataTable의 행을 결합합니다. 이는 다양한 테이블의 정보를 병합하거나 특정 기준에 따라 데이터를 필터링하는 등의 작업에 유용합니다.

다음 필드가 포함된 두 개의 DataTable T1과 T2가 있다고 가정합니다.

  • T1(CustID, ColX, ColY)
  • T2(CustID, ColZ)

다음 필드를 포함하는 공동 테이블 TJ를 생성해야 합니다.

  • TJ(CustID, ColX, ColY, ColZ)

LINQ를 사용하면 CustID 열에 내부 조인을 수행할 수 있습니다.

<code class="language-csharp">var results = from table1 in dt1.AsEnumerable()
              join table2 in dt2.AsEnumerable() on (int)table1["CustID"] equals (int)table2["CustID"]
              select new
              {
                  CustID = (int)table1["CustID"],
                  ColX = (int)table1["ColX"],
                  ColY = (int)table1["ColY"],
                  ColZ = (int)table2["ColZ"]
              };</code>
로그인 후 복사

이 쿼리는 연결된 열을 포함하는 일련의 익명 개체를 생성합니다. 그런 다음 결과를 반복하여 콘솔에 출력할 수 있습니다.

<code class="language-csharp">foreach (var item in results)
{
    Console.WriteLine(String.Format("ID = {0}, ColX = {1}, ColY = {2}, ColZ = {3}", item.CustID, item.ColX, item.ColY, item.ColZ));
}</code>
로그인 후 복사

이 코드는 다음과 같은 출력을 생성합니다.

<code>ID = 1, ColX = 11, ColY = 21, ColZ = 31
ID = 2, ColX = 12, ColY = 22, ColZ = 32
ID = 3, ColX = 13, ColY = 23, ColZ = 33
ID = 4, ColX = 14, ColY = 24, ColZ = 34
ID = 5, ColX = 15, ColY = 25, ColZ = 35</code>
로그인 후 복사

위 내용은 LINQ를 사용하여 C#에서 두 DataTable의 내부 조인을 수행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿