Order By 절(Visual Basic)

업데이트: 2007년 11월

쿼리 결과의 정렬 순서를 지정합니다.

Order By orderExp1 [ Ascending | Descending ] [, orderExp2 [...] ]

구성 요소

  • orderExp1
    필수 요소입니다. 현재 쿼리 결과에서 반환된 값의 순서를 지정하는 방법을 식별하는 하나 이상의 필드입니다. 필드 이름은 쉼표(,)로 구분되어야 합니다. Ascending 또는 Descending 키워드를 사용하여 오름차순 또는 내림차순으로 정렬된 각 필드를 식별할 수 있습니다. Ascending 또는 Descending 키워드가 지정되지 않은 경우 기본 정렬 순서는 오름차순입니다. 정렬 순서 필드는 왼쪽에서 오른쪽으로 우선 순위를 갖습니다.

설명

Order By 절을 사용하여 쿼리 결과를 정렬할 수 있습니다. Order By 절은 현재 범위의 범위 변수를 기준으로만 결과를 정렬합니다. 예를 들어 Select 절은 쿼리 식에서 새 범위를 도입할 때 해당 범위에 대한 새 반복 변수를 사용합니다. 쿼리에서 Select 절 앞에 정의된 범위 변수는 Select 절 뒤에 사용할 수 없습니다. 따라서 Select 절에서 사용할 수 없는 필드를 기준으로 결과의 순서를 지정하려면 Order By 절을 Select 절 앞에 배치해야 합니다. 이 방법을 사용해야 하는 한 가지 예는 결과의 일부분으로 반환되지 않은 필드를 기준으로 쿼리를 정렬하려는 경우입니다.

필드의 오름차순 및 내림차순은 필드의 데이터 형식에 대한 IComparable 인터페이스의 구현에 의해 결정됩니다. 데이터 형식이 IComparable 인터페이스를 구현하지 않으면 정렬 순서가 무시됩니다.

예제

다음 쿼리 식은 From 절을 사용하여 books 컬렉션에 대해 book 범위 변수를 선언합니다. Order By 절은 가격을 기준으로 쿼리 결과를 오름차순(기본값)으로 정렬합니다. 동일한 가격의 책은 제목을 기준으로 오름차순으로 정렬됩니다. Select 절은 쿼리에 의해 반환되는 값으로 Title 속성만 선택합니다.

Dim titlesAscendingPrice = From book In books _
                           Order By book.Price, book.Title _
                           Select book.Title, book.Price

다음 쿼리 식은 Order By 절을 사용하여 가격 기준으로 쿼리 결과를 내림차순으로 정렬합니다. 동일한 가격의 책은 제목을 기준으로 오름차순으로 정렬됩니다.

Dim titlesDescendingPrice = From book In books _
                            Order By book.Price Descending, book.Title _
                            Select book.Title, book.Price

다음 쿼리 식은 Select 절을 사용하여 책 제목, 가격, 출판사 및 저자를 선택합니다. 그런 다음 새 범위에 대한 범위 변수의 Title, Price, Publisher 및 Author 필드를 채웁니다. Order By 절은 저자 이름, 책 제목 그리고 마지막으로 가격을 기준으로 새 범위 변수의 순서를 지정합니다. 각 열은 기본 순서(오름차순)으로 정렬됩니다.

Dim bookOrders = _
  From book In books _
  Select book.Title, book.Price, book.PublishDate, book.Author _
  Order By Author, Title, Price

참고 항목

개념

Visual Basic의 LINQ 소개

참조

Select 절(Visual Basic)

From 절(Visual Basic)

기타 리소스

쿼리(Visual Basic)