p. 270
*ORDER BY 절 사용 특징
- 기본적인 정렬 순서는 오름차순(ASC)이다.
- 숫자형 데이터 타입은 오름차순으로 정렬했을 경우에 가장 작은 값부터 출력된다.
- 날짜형 데이터 타입은 오름차순으로 정렬했을 경우 날짜 값이 가장 빠른 값이 먼저 출력된다. 예를 들어 ’01-JAN-2012’는 ’01-SEP-2012’보다 먼저 출력된다.
- Oracle에서는 NULL 값을 가장 큰 값으로 간주하여 오름차순으로 정렬했을 경우에는 가장 마지막에, 내림차순으로 정렬했을 경우에는 가장 먼저 위치한다.
- 반면, SQL Server에서는 NULL 값을 가장 작은 값으로 간주하여 오름차순으로 정렬했을 경우에는 가장 먼저, 내림차순으로 정렬했을 경우에는 가장 마지막에 위치한다.
- GROUP BY 절에서 그룹핑 기준을 정의하게 되면 데이터베이스는 일반적인 SELECT 문장처럼 FROM절에 정의된 테이블의 구조를 그대로 가지고 가는 것이 아니라, GROUP BY 절의 그룹핑 기준에 사용된 컬럼과 집계 함수에 사용될 수 있는 숫자형 데이터 칼럼들의 집합을 새로 만든다. (p.276)
- GROUP BY 이후에 수행 절인 SELECT절이나 ORDER BY 절에서 개별 데이터를 사용하는 경우 에러가 발생한다. (p.276)
- 결과적으로 SELECT 절에서는 그룹핑 기준과 숫자 형식 칼럼의 집계 함수를 사용할 수 있지만, 그룹핑 기준 외의 문자 형식 칼럼은 정할 수 없다. (p.276)
예제) 칼럼 순서번호 + ALIAS명 사용 ORDER BY 절 사용
SELECT DNAME, LOC AREA, DEPTNO
FROM DEPT
ORDER BY 1, AREA, 3 DESC;
'개발 및 관리 > Oracle 9i, 10g, 11g, 12c, 19c' 카테고리의 다른 글
Top N 쿼리 - SQL전문가 가이드 p. 277 (0) | 2012.03.28 |
---|---|
SELECT 문장 실행 순서 – 옵티마이저가 SQL 문장의 SYNTAX, SEMANTIC 에러를 점검하는 순서 (0) | 2012.03.28 |
집계 함수와 NULL 처리 - SQL전문가 가이드 p. 265 (0) | 2012.03.28 |
CASE 표현과 Oracle의 DECODE 함수의 차이점 비교 - SQL전문가 가이드 p.264 (0) | 2012.03.28 |
GROUP BY절과 HAVING절의 특성 - SQL전문가 가이드 p.256 (0) | 2012.03.28 |