IT 일기장

[DB] VARCHAR2로 order by 본문

프로그래밍 언어/SQL(DB)

[DB] VARCHAR2로 order by

뽕슈 2022. 9. 27. 11:53
반응형

상품관리 시스템을 개발하다가 순서 정렬이 제대로 되지 않는 오류건이 발생했었다.

테스트 Table 하나 만들어서 진행해봤는데..

 

순서 정렬하는 컬럼 타입이 varchar2 였다.

 

데이터 넣고 간단하게 조회해 보고

select * from t_order;

 

 

내림차순으로 정렬해보니까 이상하게 나왔다..

select *
from t_order
order by ord desc;

 

 

varchar2는 제대로 정렬이 안되는구나 하고 숫자로 변경해줬더니 잘됐다.

순서 정렬할 때는 앞으로 컬럼 타입을 숫자로 바꿔주거나, 이미 데이터가 많이 쌓이고 변경하기 부담스럽다면 CAST 변환을 해주면 될듯 싶다.

select * 
from t_order
order by cast(ord as unsigned) desc;

 

반응형
Comments