은행 다니는 하이디 2024. 4. 13. 22:11

기본적으로 데이터는 값을 입력한 순서로 빈 공간부터 채워서 저장된다. 

그래서 우리가 값을 원하는 형태로 예쁘게 보려면 정렬해야 하는데 이때 쓰는 것이 ORDER BY 

 

기본 값은 ASC (오름차순) 이고 

ORDER BY DESC ; 하면 반대 순서로 만들 수 있다. 문자도 오름/내림차순이 있다. 

 

  ASC : 오름차순(A→Z순, ㄱ→ㅎ 순, 1→10순)

• DESC : 내림차순 (Z→A순, ㅎ→ㄱ순, 10→1순)

 

두개씩 쓸 수도 있다. 엑셀에서 정렬하는 것처럼, 일단 직무별로 내림차순 정렬하고, 그 다음 입사일 순서로 오름차순하는 식이다.

 

추가지식

  • SELECT에 들어간 순서대로 1,2,3 순서를 정해서 써도 된다. 위 문장의 경우에는 
    ORDER BY 1 DESC, 3 (ASC) ; 이렇게 해도 똑같이 나옴  
  • NULL값이 있는 경우 기본은 NULLS FIRST  널값이 먼저나옴. 뒤에 나오게 하고 싶다면 NULLS LAST 쓰면됨
  • ORDER BY의 실행순서는 마지막이기 때문에, SELECT에서 보여주기로 한 행 모습대로 (연산을 썼다면 동일하게 연산을 써서) 표현해야 한다
  • SELECT에 없는 컬럼을 기준으로 정렬할 수도 있다 (물론 나만 아는 의미없는 정렬이 되긴 함)