ORDER BY 구문 활용시 단순 칼럼명으로 정렬하는것이 아니라 특정칼럼의 특정값을 먼저 오게 하는것처럼 정렬순서를 변경하고 싶은경우
ORDER BY 구문과 DECODE 혹은 CASE WHEN 구문을 함께 활용하면 된다.
-DECODE 사용 예제
SELECT PART,
GRADE
FROM (SELECT '국어' PART, 'A' GRADE FROM DUAL
UNION ALL
SELECT '수학' PART, 'C' GRADE FROM DUAL
UNION ALL
SELECT '영어' PART, 'B' GRADE FROM DUAL)
ORDER BY DECODE(PART,'영어',0);
-CASE WHEN 활용 예제
SELECT PART,
GRADE
FROM (SELECT '국어' PART, 'A' GRADE FROM DUAL
UNION ALL
SELECT '수학' PART, 'C' GRADE FROM DUAL
UNION ALL
SELECT '영어' PART, 'B' GRADE FROM DUAL)
ORDER BY CASE WHEN PART = '수학' THEN 0 END;
DCODE 문 혹은 CASE WHEN 구문 뒤에는 기존 ORDER BY 구문처럼 칼럼명을 또 활용할 수 있으므로, 다양한 정렬구조를 만들수 있다.
오라클 BETWEEN 함수 (0) | 2014.09.02 |
---|---|
오라클 LENGTH, LENGTHB 차이점 (0) | 2014.08.02 |
오라클 ORA_ROWSCN - 데이터 최종수정 시간 확인 (0) | 2014.03.20 |
오라클 ADD_MONTHS 사용시 주의할점 (0) | 2014.03.14 |
오라클 CASE WHEN THEN (0) | 2014.01.19 |
댓글 영역