본문 바로가기

데이터 분석/Postgre SQL - 정리하자

Order By 문 활용법

반응형

# 구동 환경 : Postgre SQL 12.3 설치 -> pgAdmin4에서 아래 DB 연동 -> DBeaver 7.1.1 버전에서 코딩 진행

# 활용하는 DB = dvdrental.tar

PostgreSQL의 ORDER BY 문 이해하기

ORDER BY 문은 데이터를 특정 열을 기준으로 정렬하여 결과를 출력하는 데 사용됩니다. 이를 통해 데이터를 더욱 가독성 있게 정렬된 형태로 조회할 수 있습니다. 이제 ORDER BY 문의 기본 개념과 다양한 활용 사례를 살펴보겠습니다.

 

ORDER BY 문을 사용하는 이유?

  1. 데이터 가독성 향상: 데이터를 정렬하여 가독성을 높일 수 있습니다. 예를 들어, 이름이나 날짜순으로 데이터를 정렬하면 사용자가 데이터를 더 쉽게 이해할 수 있습니다.
  2. 효율적인 데이터 분석: 데이터를 정렬함으로써 특정 패턴이나 추세를 쉽게 파악할 수 있습니다. 예를 들어, 매출 데이터를 내림차순으로 정렬하면 최고 매출 제품을 쉽게 찾을 수 있습니다.
  3. 정확한 보고서 생성: 보고서나 대시보드를 생성할 때 정렬된 데이터를 사용하면 더 명확하고 일관성 있는 결과를 제공할 수 있습니다.
  4. 최상위 또는 최하위 데이터 확인: ORDER BY 문과 LIMIT 절을 함께 사용하여 상위 또는 하위 N개의 데이터를 쉽게 조회할 수 있습니다. 예를 들어, 가장 최근에 발생한 거래나 가장 높은 매출을 기록한 제품을 쉽게 확인할 수 있습니다.

 

ORDER BY 문은 왜 중요할까?

  1. 데이터 정렬의 기본 도구: 데이터베이스에서 데이터를 정렬하는 가장 기본적이고 필수적인 도구입니다. 정렬되지 않은 데이터는 분석이나 보고서 작성 시 비효율적일 수 있습니다.
  2. 다양한 데이터 타입 지원: ORDER BY 문은 문자열, 숫자, 날짜 등 다양한 데이터 타입을 기준으로 정렬할 수 있습니다. 이를 통해 모든 유형의 데이터를 효과적으로 관리할 수 있습니다.
  3. 복합적인 정렬 조건 지원: 여러 열을 기준으로 복합적으로 데이터를 정렬할 수 있습니다. 예를 들어, 부서와 급여를 기준으로 정렬하여 각 부서 내에서 급여 순으로 직원 목록을 정렬할 수 있습니다.
  4. 데이터베이스 성능 최적화: 정렬된 데이터를 사용하면 쿼리 성능을 최적화할 수 있습니다. 정렬된 인덱스를 활용하면 검색 속도가 향상되고, 데이터 조회 시 불필요한 작업을 줄일 수 있습니다.

 

ORDER BY 문의 활용 예제

  1. 기본 정렬: employees 테이블에서 직원의 이름을 오름차순으로 정렬하여 조회합니다.
  2. 내림차순 정렬: employees 테이블에서 직원의 급여를 내림차순으로 정렬하여 조회합니다.
  3. 여러 열을 기준으로 정렬: 여러 열을 기준으로 정렬할 수 있습니다. 예를 들어, 부서별로 이름을 오름차순으로 정렬합니다.
  4. 정렬 기준 지정: 열을 기준으로 오름차순과 내림차순을 조합하여 정렬할 수 있습니다. 예를 들어, 부서를 오름차순으로, 급여를 내림차순으로 정렬합니다.
  5. 숫자와 날짜 정렬: 숫자나 날짜 데이터를 정렬하여 시간 순서나 값의 크기에 따라 정렬된 결과를 얻을 수 있습니다. 예를 들어, 주문 날짜를 기준으로 내림차순으로 정렬합니다.

 

Order by문은 SELECT 문에서 가져온 데이터를 정렬하는데 사용합니다. [Python - pandas에서는 정렬을 위해 sort_values('컬럼이름', ascending=True 혹은 False)를 사용해서 정렬을 하죠]

저번 페이지에서 불러온 Select문을 기반으로 Order by문을 coding 해보겠습니다.

  SELECT 
         FIRST_NAME  -- COLUMN 선택
        ,LAST_NAME   -- COLUMN 선택
        ,EMAIL       -- COLUMN 선택
    FROM
         CUSTOMER    -- 테이블 선택
ORDER BY FIRST_NAME  -- FIRST_NAME으로 정렬
ASC                  -- Ascending = 오름차순 정렬 / DESC (Descending) = 내림차순 정렬

Order by 오름차순

정렬이 잘 되었습니다. 내림차순을 원하시면 ASC대신 DESC를 하시면 됩니다.

아시겠지만 ORDER BY 또한 여러 컬럼을 선택 후 정렬하는것도 가능하니 직접 해보시면 좋을것 같습니다.

결론

PostgreSQL의 ORDER BY 문은 데이터를 정렬하여 보다 가독성 있고 분석하기 쉽게 만드는 데 필수적인 도구입니다. 데이터를 오름차순 또는 내림차순으로 정렬하여 다양한 요구사항을 충족할 수 있습니다. ORDER BY 문을 잘 활용하면 데이터 조회와 분석이 더욱 효과적이고 효율적으로 이루어질 수 있습니다.

다음에는 SELECT DISTINCT문에 대해서 보도록 하겠습니다.

반응형