DB/오라클
오라클 문자 숫자 정렬
개발자와코더사이가 PM일까?
2017. 12. 5. 17:30
반응형
오라클 문자열 컬럼에 숫자와 문자가 섞여있다면 어떻게 정리를 할까? 고민을 해보았는데
데이터가 A-1, A-100, A-2을 A-1, A-2, A-100으로 정렬를 하고 싶다면
완벽하지는 않지만 아래의 방식이 어느정도 통하는 것 같다.
오라클 에서 정규식이라니.. ㅎㅎ 대박이다.
문자만 추출
--SELECT REGEXP_REPLACE(c, '[0-9]')
숫자만 추출
--SELECT REGEXP_REPLACE(c, '[^0-9]')
SELECT 컬럼명
FROM TABLE
ORDER BY REGEXP_REPLACE(컬럼명, '[0-9]') , to_number(REGEXP_REPLACE(컬럼명, '[^0-9]'))