"aaa" 필드 값이 아래와 같습니다.
'1 ', '11 ', '2 ', '21211', '한123', '가나1' 등
다섯자리로 뒤가 채워져 있습니다.
이렇게 정렬 하고 싶습니다.
즉 숫자순, 한글순으로
'1 '
'2 '
'11 '
'21211'
'가나1'
'한123'
ORDER BY LPAD(TRIM(A), 6)
WITH t AS ( SELECT '1 ' v FROM dual UNION ALL SELECT '2 ' FROM dual UNION ALL SELECT '11 ' FROM dual UNION ALL SELECT '21211' FROM dual UNION ALL SELECT '가나1' FROM dual UNION ALL SELECT '한123' FROM dual ) SELECT v -- , REGEXP_REPLACE(v, '[0-9 ]') v1 -- , TO_NUMBER(REGEXP_REPLACE(v, '[^0-9]')) v2 FROM t ORDER BY REGEXP_REPLACE(v, '[0-9 ]') NULLS FIRST , TO_NUMBER(REGEXP_REPLACE(v, '[^0-9]')) ;