>백엔드 개발 >C++ >원본 테이블을 수정하지 않고 DataTable의 행을 정렬하려면 어떻게 해야 합니까?

원본 테이블을 수정하지 않고 DataTable의 행을 정렬하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-08 19:37:49814검색

How Can I Sort a DataTable's Rows Without Modifying the Original Table?

데이터 테이블 행 정렬 방법

데이터 테이블 작업을 할 때 특정 조건에 따라 행을 정렬해야 하는 경우가 많습니다. 두 개의 열이 있는 데이터 테이블이 있다고 가정합니다.

<code>COL1   COL2
Abc    5
Def    8
Ghi    3</code>

목표는 이 데이터 테이블을 COL2 열의 값을 기준으로 내림차순으로 정렬하여 다음과 같이 출력하는 것입니다.

<code>COL1   COL2
Def    8
Abc    5
Ghi    3</code>

DataView를 정렬하는 것은 간단하지만 DataView를 사용하지 않고 DataTable 자체를 직접 정렬하려는 경우 문제가 발생합니다.

솔루션

DataTable을 직접 내부 정렬하는 것은 불가능합니다. 그러나 원하는 경우 정렬된 DataView에서 생성된 새 DataTable을 만들 수 있습니다. 방법은 다음과 같습니다.

<code class="language-csharp">DataView dv = ft.DefaultView;
dv.Sort = "COL2 desc";
DataTable sortedDT = dv.ToTable();</code>

코드에서 먼저 원본 DataTable(ft)에서 DataView(dv)를 만듭니다. 그런 다음 Sort 속성을 사용하여 DataView에 정렬 조건을 적용합니다. 마지막으로 ToTable() 메서드를 사용하여 정렬된 DataView에서 새 DataTable(sortedDT)을 만듭니다.

이 접근 방식을 사용하면 원본 DataTable을 수정하지 않고도 원하는 정렬을 달성할 수 있습니다.

위 내용은 원본 테이블을 수정하지 않고 DataTable의 행을 정렬하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.