6) ORDER BY ASC(오름차순) / DESC (내림차순)
| 구분 | |||
|---|---|---|---|
| 오름차순 | ▲ | 작은 수가 맨 위로 | A,ㄱ가 맨 위 (아스키코드 작음) |
| 내림차순 | ▼ | 큰 수가 맨 위로 | A,ㄱ가 맨 아래(아스키코드 작음) |
ex) salary가 높은 순으로 정렬 (DESC 내림차순)
select * from employees order by salary DESC;
ex) family_name을 가나다 순으로 정렬 (ASC 오름차순 - 아스키코드)
select * from employees order by family_name ASC;
select * from employees order by family_name ; -- 생략이 가능
새로 만든 컬럼에 정렬을 할 수 있다.
연봉이 높은 사람 기준으로 정렬
select family_name, first_name, salary*12 as 연봉 from employees order by 연봉 DESC;
다중 정렬
select * from employees order by family_name, salary desc;
-- 1차 정렬이 동률일 경우 salary가 desc, 큰 거 위주로 올라가게 하라
-- 같은 고씨에서도 salary가 desc, 큰 거 위주로 올라가게 하라
★Q) ORDER BY는 조건(WHERE) 앞에 올까? 뒤에 올까?
"조건 건 후에 정렬하는 것이 맞다!!!!" --> 훨씬 빠름
ORDER BY가 조건의 뒤에 오는 이유 : 조건에 맞춰서 데이터를 추린 후에 정렬하는 것이 더 효율적
select * from employees where salary > 2000000 order by family_name asc;
// 조건 //정렬