WITH T AS(
SELECT '003' AS NO FROM DUAL UNION ALL
SELECT '111' FROM DUAL UNION ALL
SELECT '999' FROM DUAL UNION ALL
SELECT 'A00' FROM DUAL UNION ALL
SELECT 'A77' FROM DUAL UNION ALL
SELECT 'A99' FROM DUAL UNION ALL
SELECT 'B10' FROM DUAL )
SELECT CASE WHEN T.NO < '999' THEN TO_CHAR(TO_NUMBER(T.NO) + 1, 'fm000')
WHEN T.NO = '999' THEN 'A00'
WHEN SUBSTR(T.NO, 2, 2) < '99' THEN SUBSTR(T.NO, 1, 1) || TO_CHAR(TO_NUMBER(SUBSTR(T.NO, 2, 2)) + 1, 'fm00')
ELSE CHR(ASCII(SUBSTR(T.NO, 1, 1)) + 1) || '00' END
FROM T
by 초짜
[2011.09.30 15:24:31]
필상님 좋은 조언 감사합니다. 보다 노력하겠습니다.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.