본문 바로가기
스터디/SQL

[정리노트] SQLD 2024년 개정판 - ORDER BY

by 견습생L 2024. 8. 21.

 

[정리노트] SQLD 2024년 개정판 - ORDER BY


ORDER BY

  • 데이터는 입력된 순서대로 출력되나, 출력되는 행의 순서를 사용자가 변경하고자 할 때 사용
  • ORDER BY 뒤에 명시된 컬럼 순서대로 정렬 → 1차 정렬, 2차 정렬 전달 가능
  • 정렬 순서를 오름차순 (ASC), 내림차순 (DESC)으로 전달 (생략 시 오름차순 정렬)
    • 한글 (가~라..), 영어 (A~Z), 숫자 (1~99….), 날짜(과거~최근)
  • 유일하게 SELECT 절에 정의한 컬럼 별칭 사용 가능
  • SELECT 절에 선언된 순서대로의 숫자로도 사용 가능

ex) 문자 정렬 예제

SELECT EMPLOYEE_ID, FIRST_NAME, HIRE_DATE
  FROM EMPLOYEES
 ORDER BY FIRST_NAME;

ex) SELECT 절 컬럼 순서를 사용한 정렬 (3 = HIRE_DATE)

SELECT EMPLOYEE_ID, FIRST_NAME, HIRE_DATE
  FROM EMPLOYEES
 ORDER BY 3;

복합 정렬

  • 먼저 정렬한 값의 동일한 결과가 있을 경우 추가적으로 정렬 가능 → 1차 정렬한 값이 같은 경우 그 값 안에서 2차 정렬 컬럼값의 정렬이 일어남

ex) SALARY 값을 기준으로 내림차순으로 먼저 정렬 후 동일한 SALARY 값이 있을 경우 HIRE_DATE 값으로 한 번 정렬

SELECT FIRST_NAME, SALARY, HIRE_DATE
  FROM EMPLOYEES
 WHERE SALARY > 10000
   AND DEPARTMENT_ID = 90
 ORDER BY SALARY DESC, HIRE_DATE ASC;

ex) 컬럼 별칭을 사용한 정렬

SELECT EMPLOYEES_ID AS EID,
       SALARY,
	   DEPARTMENT_ID
  FROM EMPLOYEES E
 WHERE DEPARTMENT_ID = 100
 ORDER BY EID DESC;

반응형