복붙노트

[SQL] SQL 다중 열 정렬

SQL

SQL 다중 열 정렬

나는 SQL에서 여러 열을 기준으로 정렬하려고하고, 다른 방향으로하고있다. 1 열은 정렬 된 하강 및 2 열 상승 할 것이다.

이걸 어떻게 할 수 있습니까?

해결법

  1. ==============================

    1.

    ORDER BY column1 DESC, column2
    

    이 2 열 두개 이상의 행에 대한 컬럼 1 필드마다 동일하다 (기본값 상승)에 의해 먼저 컬럼 1 (하강)에 의해 모두, 및 정렬한다.

  2. ==============================

    2.다른 대답은 그래서 여기 간다, 구체적인 예를 결여 :

    다른 대답은 그래서 여기 간다, 구체적인 예를 결여 :

    다음과 같은 사람들이 테이블을 감안할 때 :

     FirstName |  LastName   |  YearOfBirth
    ----------------------------------------
      Thomas   | Alva Edison |   1847
      Benjamin | Franklin    |   1706
      Thomas   | More        |   1478
      Thomas   | Jefferson   |   1826
    

    아래의 쿼리를 실행하는 경우 :

    SELECT * FROM People ORDER BY FirstName DESC, YearOfBirth ASC
    

    결과 집합은 다음과 같이 표시됩니다

     FirstName |  LastName   |  YearOfBirth
    ----------------------------------------
      Thomas   | More        |   1478
      Thomas   | Jefferson   |   1826
      Thomas   | Alva Edison |   1847
      Benjamin | Franklin    |   1706
    
  3. ==============================

    3.

    SELECT  *
    FROM    mytable
    ORDER BY
            column1 DESC, column2 ASC
    
  4. ==============================

    4.여러 열 순서는 모두 열의 해당 값에 따라 달라집니다 다음은 알파벳과 숫자와 두 열의 값으로 명명 된 두 개의 열이 오름차순 및 내림차순 주문입니다 내 테이블 예이다.

    여러 열 순서는 모두 열의 해당 값에 따라 달라집니다 다음은 알파벳과 숫자와 두 열의 값으로 명명 된 두 개의 열이 오름차순 및 내림차순 주문입니다 내 테이블 예이다.

    지금은 명령 아래 실행하여이 두 열에 의해 주문을 수행합니다 :

    이제 다시 나는이 두 열에서 새로운 값을 삽입, 어디 ASC 순서에 따라 알파벳 값 :

    이 같은 예 테이블 모양의 열. 이제 다시 같은 작업을 수행 :

    첫 번째 열에있는 값을 볼 수있는 내림차순 순서로되어 있지만, 두 번째 열은 ASC 순서 아니다.

  5. ==============================

    5.당신은 여러 조건에 여러 주문을 사용할 수 있습니다

    당신은 여러 조건에 여러 주문을 사용할 수 있습니다

    ORDER BY 
         (CASE 
            WHEN @AlphabetBy = 2  THEN [Drug Name]
          END) ASC,
        CASE 
            WHEN @TopBy = 1  THEN [Rx Count]
            WHEN @TopBy = 2  THEN [Cost]
            WHEN @TopBy = 3  THEN [Revenue]
        END DESC 
    
  6. from https://stackoverflow.com/questions/2051162/sql-multiple-column-ordering by cc-by-sa and MIT license