실습

 

-부서 10과 30에 속하는 모든 사원의 이름과 부서번호를 이름의 알파벳 순으로 정렬되도록 질의문을 형성하라.

SQL>SELECT ename, deptno

      2 FROM emp

      3 WHERE deptno IN(10,30)

      4 ORDER BY ename;

 

 

-1982년에 입사한 모든 사원의 이름과 입사일을 구하는 질의문은?

SQL> SELECT ename, hiredate

       2 FROM emp

       3 WHERE hiredate LIKE '%82';

 

 

 

 

다중 열에 의한 정렬

 

-Order by list에 명시한 순서가 정렬되는 순서임

-Select list에 없는 열로도 정렬은 가능

-모든 사원의 이름과 급여 및 부서번호를 출력하는데, 부서 번호로 결과를 정렬한 다음 급여 대해서는 내림차순으로 정렬하라.

 

 SQL> SELECT ename, job, deptno, sal

       2 FROM emp

       3 ORDER BY deptno, sal DESC;

 

 

 

order by 절 사용 시 정렬 기준의 원칙

 

-디폴트는 오름차순 정렬이 원칙

-NUMBER TYPE은 가장 적은 값부터 출력됨(예:1-99)

-날짜 타입은 가장 빠른 값부터 출력됨(예:80-12-17,  81-02-20, 82-01-23, ..)

-문자 값은 알파벳 순서로 출력됨(예:특수문자-A_Z_a_z)

-Null값은 오름차순에서는 제일 나중에 그리고 내림차순에선느 제일 먼저 출력됨

-SELECT 절에 포함되지 않는 컬럼도 정렬을 하기 위한 ORDER BY절에 올수 있음

 

 

단일 컬럼을 이용한 정렬-내림차순

 

*사용예

학생 테이블에서 학년을 내림차순으로 정렬하여 이름, 학년, 전화번호를 출력하여라

 

단일 컬럼을 이용한 정렬-오름차순

 

*사용예

학생 테이블에서 이름을 가나다순으로 정렬하여 이름, 학년, 전화번호를 출력하여라

 

ORDER BY 절

 

*기본적인 정렬 방법

-문자 값은 알파벳순으로 출력되고, 한글은 가나다순으로 출력된다.

-숫자 값은 가장 작은 값으로 먼저 출력된다.

-날짜 값은 과거의 날짜순으로 출력된다.

 

*사용법

SELECT         [DISTINCT]  {*    | cloumn[alias]...}

FROM            table

[WHERE         condition]

[ORDER BY    {column, expression} [ASC|DESC]]

 

-ORDER BY : 칼럼이나 표현식을 기준으로 출력 결과를 정렬할 때 사용

-ASC : 오른차순으로 정렬, 기본 값

-DESC : 내림차순으로 정렬하는 경우에 사용, 생략 불가능

 

 

 

*정렬(sorting)

 

-SQL 명령문에서 검색된 결과는 테이블에 데이터가 입력된 순서대로 출력

-하지만, 데이터의 출력 순서를 특정 컬럼을 기준으로 오름차순 또는 내림차순으로 정렬하는 경우가 자주 발생

-여러 개의 칼럼에 대해 정렬 순서를 정하는 경우도 발생

-예

  。학생 테이블에서 학번순이나 교수 테이블에서 급여수능로 정렬하는 경우

 

 

 

 

 

MINUS 연산의 예

 

'오라클 > Oracle,SQL' 카테고리의 다른 글

오라클공부 202. ORDER BY 절  (0) 2015.09.22
오라클공부 201. 정렬  (0) 2015.09.22
오라클공부 199. MINUS 연산  (0) 2015.09.22
오라클공부 198. INTERSECT 연산  (0) 2015.09.21
오라클공부 197. INTERSECT 연산  (0) 2015.09.21

+ Recent posts