본문 바로가기
개발하는 '정'/DB

[Oracle] Order by 1, 2, ... 구문의 의미와 사용 방법

by 주앤정_블로그 2023. 6. 7.

[Oracle] Order by 1, 2,... 구문의 의미와 사용 방법

 

인수인계 받은 쿼리를 분석하던 중 아래의 구문을 발견하였다.

"Order by 1, 2, 3 desc, 4"

 

이는 직관적으로 이해할 수 있다.

"Order by 첫 번째 컬럼, 두 번째 컬럼, 세 번째 컬럼 desc, 네 번째 컬럼"이라는 의미이다.

 

오라클의 "Order by 상수"의 사용 방법은 아래와 같다.

select 2 col1,'aaa' col2, 'A' col3 from dual 
UNION ALL
select 2 col1,'aaa' col2, 'B' col3 from dual 
UNION ALL
select 1 col1,'bbb' col2, 'B' col3 from dual 
ORDER BY 1, 3, 2 -- Order by col1, col3, col2와 동일하다.

 

Order by 상수 예제

당연히 asc, desc 사용이 가능하다.

 

+) 개인적인 생각

짧고 단순한 쿼리이거나 컬럼명이 아주 긴 경우에, 작업자의 쿼리 작성 속도가 빨라지는 등의 장점이 있겠다.

그러나 장문의 쿼리에서 사용하게 된다면 지정한 컬럼이 무엇인지 즉시 알기 어려우므로

유지보수하는 입장에서 불친절한 쿼리라고 느꼈다.

 

 

반응형

 

반응형

댓글