Order by 정렬
order by를 입력하는 순서는 쿼리구문의 제일 마지막에 적어줘야한다.
- 오름차순정렬 : asc = ascending order, default
- 내림차순정렬(최신이 위쪽) : desc = descending order 컬럼명은 alias를 적어도 적용가능하다
asc : 오름차순 정렬, 디폴트값
asc를 적어도되고 생략해도 동일한 결과값이 출력된다.
아래 예시는 employees테이블에서 hire_date로 오름차순 정렬하여 출력하는 퀴리이다.
1 | select last_name, job_id, department_id, hire_date |
아래와 같이 오름차순으로 정렬됨을 알수있다
desc : 내림차순 정렬
내림차순을 원하면 꼭 적어줘야한다.
어디서 본적이 없는가?
desc는 describe의 약어이기도했다.
동명이기능이라고 생각하면된다.
hire_date를 alias로 date로 별칭을 정한뒤 order by 컬럼명을 별칭으로 적어도 정상적으로 출력된다.
아래 예시는 employees테이블에서 별칭date로 내림차순 정렬하여 출력하는 퀴리이다.
1 | select last_name, job_id, department_id, hire_date as date |
위치값기준 정렬
위치값으로 정렬할수도있다.
아래 예시를 보자.
숫자 3을 기준으로 어떻게 정렬될까?
select되어진 컬럼들을 차례대로 1번부터 시작하면 된다.
3이니 department_id를 기준으로 아무것도 적지않았으니 asc로 정렬하게된다.
아래 예시는 employees테이블에서 department_id로 오름차순 정렬하여 출력하는 퀴리이다.
1 | select last_name, job_id, department_id, hire_date |
다중컬럼기준 정렬
다중컬럼 기준으로 정렬도 가능하다
이때는 정렬되는 순서가 달라지는데 order by 1번컬럼, 2번컬럼
인 경우 1번컬럼 정렬 후!!! 2번컬럼이 정렬되어 출력된다.
아래예시를 보자.
employees테이블에서 department_id는 오름차순 정렬한 뒤 salary는 내림차순정렬로 last_name, job_id, department_id, salary를 출력하는 춰리이다.
1 | select last_name, job_id, department_id, salary |