[C#] DataTable 정렬(Sort) 방법 (여러개 컬럼 조합)

C#에서 DataTable를 사용하다 보면 특정 컬럼의 값으로 행을 정렬해야 할 상황이 생긴다. 이럴 때는 다양한 방법이 있지만 DataTable 기본 속성 Sort를 사용하면 쉽게 정렬이 가능하다. 여러 개(Multi) 컬럼을 조합하여 정렬도 가능하다.

 

아래의 예제 중 상황에 맞는 방법을 사용하면 된다.

 

1. DataTable Sort 속성을 사용하는 방법

 

DataTable dt = new DataTable();

// ... 생략

// 오름차순
dt.DefaultView.Sort = "HIREDATE ASC"; 

// 내림차순
dt.DefaultView.Sort = "HIREDATE DESC";

// 여러개 컬럼을 조합하여 정렬
dt.DefaultView.Sort = "JOB ASC, HIREDATE DESC";

 

"ASC" 는 생략이 가능하다.

dt.DefaultView.Sort = "HIREDATE ASC" dt.DefaultView.Sort = "HIREDATE" 

 

여러개의 컬럼을 조합하여 정렬할 경우 컬럼을 쉼표(",")로 구분하여 입력하면 된다.

 

2. DataView를 사용하는 방법

 

DataTable dt = new DataTable();

// ... 생략

DataView dv = new DataView(dt);
dv.Sort = "JOB ASC, HIREDATE DESC";

dt = dv.ToTable();

 

3. Select 메서드를 사용하는 방법

 

DataTable dt = new DataTable();

// ... 생략

dt = dt.Select("", "JOB ASC, NAME DESC").CopyToDataTable<DataRow>();

 

 

DataTableExample.zip
0.04MB

 

 

댓글

Designed by JB FACTORY