-Order by절은 결과값을 정렬 하는 것이다.
-기본적으로 order by절은 select문 뒤에 쓰인다.
-기본 order by절
SQL>select empno, ename, sal
from emp order by empno asc; |
SQL>select empno, ename, sal
from emp order by empno desc; |
->오름차순 정렬 | ->내림차순 정렬 |
asc나 desc를 사용하지 않은경우에는 기본적으로 오름차순(asc) 정렬이 된다.
-컬럼번호로 정렬하기
SQL>select empno, ename, sal from emp order by 3; |
select 리스트에 있는 컬럼들에 번호를 순서대로 부여하여 order by절에 3번째 컬럼인 sal을 기준으로 정렬하게 된다.
-select 리스트에 없는 컬럼으로 정렬하기
SQL>select empno, ename, sal from emp order by deptno; |
order by절은 select리스트에 컬럼이 없어도 테이블에 있는 컬럼이라면 order by절에 넣어서 정렬할 수 있다.
-가공된 결과로 정렬하기
SQL>select hiredate, to_char(hiredate, 'Q') from emp order by to_char(hiredate, 'Q') |
함수를 사용한 결과로도 정렬할 수 있다.
-컬럼 alias로 정렬하기
SQL>select empno, ename, sal as salary from emp where salary >= 2000; --에러 |
SQL>select empno, ename, sal as salary from emp order by salary; --실행 |
->Where절에 컬럼 alias 사용할 수 없다. | ->Order by절에 컬럼 alias 사용할 수 있다. |
Where절에서는 컬럼 alias를 사용할 수 없지만 order by절에서는 컬럼 alias를 사용할 수 있다.
또한 order by절에서는 컬럼명(order by salary -> order by sal)으로도 사용할 수 있다.
alias를 사용하는 방법은 다른 포스트를 검색해보면 찾아볼 수 있다.
위의 예제들을 참고해서 다양한 order by절을 응용할 수 있다.
'SQL > ORACLE' 카테고리의 다른 글
SQL 서브쿼리의 시작 (0) | 2014.02.12 |
---|---|
오라클(DB) 프로시저 문법 (0) | 2014.02.12 |
[ORACLE]SELECT의 정의 (0) | 2014.02.12 |
[ORACLE]WHERE절의 기능 (0) | 2014.02.12 |
[ORACLE]ALIAS란? (0) | 2014.02.12 |
[ORACLE]ALIAS란? (0) | 2014.02.12 |
[ORACLE]SELECT문 해석 순서 (0) | 2014.02.12 |
[ORACLE]DUAL 테이블이란? (0) | 2014.02.12 |