반응형
오라클에서 ORDER BY 1, 2, 3
이런 내용을 본 적이 있었을 텐데
뭔 말인고 하면
테이블의 1,2,3번째 컬럼 기준으로
정렬하겠다는 말이다
즉 ORDER BY 1 DESC는
첫번째 열 기준으로 내림차순 정렬이라는 말이다
컬럼 번호를 이용해 정렬하는 방식은
겉보기에는 그럴싸하지만
컬럼 숫자만으로는
어느 컬럼을 지정한 건지 알아보기 어렵고
컬럼을 추가, 삭제하는 등 변경했을 경우
ORDER BY가 꼬일 수 있기 때문에
컬럼명을 기준으로
ORDER BY를 거는 것을 권장한다
마지막으로 예제에 사용한 코드는 아래와 같다
SELECT * FROM SCOTT.EMP
ORDER BY 1, 2, 3 -- 1,2,3번째 컬럼 순으로 오름차순 정렬
-- ORDER BY EMPNO, ENAME, JOB과 동일
SELECT * FROM SCOTT.EMP
ORDER BY 1 DESC -- 1번째 컬럼 기준으로 내림차순 정렬
-- ORDER BY EMPNO DESC와 동일
SELECT * FROM SCOTT.EMP
ORDER BY 2 -- 2번째 컬럼 기준으로 오름차순 정렬
-- ORDER BY ENAME과 동일
반응형
'SQL > Oracle' 카테고리의 다른 글
오라클 날짜 차이 계산방법 (0) | 2020.06.24 |
---|---|
오라클 환경변수 설정 및 추가 삭제 방법 (0) | 2020.06.22 |
오라클 최대값 2번째로 큰 값 N번째로 큰 값 구하는 방법 (2) | 2020.06.09 |
오라클 테이블 제약조건 조회방법 (0) | 2020.06.04 |
오라클 PK 조회 추가 삭제 변경방법 정리 (0) | 2020.06.04 |
댓글