본문 바로가기
  • 읽고보고쓰고
PROGRAMMING/Database

[ORACLE] 내 맘대로 소팅 (커스텀 정렬)

by 체리그루브 2022. 12. 12.
728x90
SELECT * 
FROM TB_FRUIT
ORDER BY DECODE(FRUIT, 'APPLE', 1, 'GRAPES', 2, 'BANANA', 3, 99) ASC;

 

이번에 개발하다가 원치않게 위와 같은 소팅이 필요할 때가 있었다. DECODE함수를 통한 변환으로 소팅 기반 숫자를 만든다. 이때 범주에 들지 않는 것은 모두 99 로 변환한다.

ORDER BY에 DECODE 함수를 사용하는 것은 속도면에서 좋지는 않을 것 같지만, 일시적으로 사용되는 쿼리에는 무방할 것으로 보인다.


※ 위 쿼리들은 현재 Live 에서 사용하는 것을 변형한 것임을 밝혀둔다.

728x90

댓글