year | date |
2002 | 1-6-02 |
2002 | 3-6-02 |
2002 | 7-6-02 |
2002 | 9-6-02 |
2002 | 13-2-02 |
2002 | 22-10-02 |
2002 | 1-11-02 |
2002 | 30-12-02 |
2002 | 3-10-02 |
2002 | 14-2-02 |
일은 1자리,2자리
월도 1자기, 2자리
년도는 2002년으로 고정되어 있습니다.
그리고 일,월에서 1자리의 경우 앞에 01,04 이런식으로 0이 없습니다.
year | date |
2002 | 2002-06-01 |
2002 | 2002-06-03 |
2002 | 2002-06-07 |
2002 | 2002-06-09 |
2002 | 2002-02-13 |
2002 | 2002-10-22 |
2002 | 2002-11-02 |
2002 | 2002-12-30 |
2002 | 2002-10-03 |
2002 | 2002-02-14 |
결과표입니다. 단순히 이렇게 변형만 하고 싶습니다ㅜ
오라클에서 테스트 했습니다.
기본적인 문자함수만을 사용했습니다.
WITH t AS ( SELECT '2002' yyyy, '1-6-02' dt FROM dual UNION ALL SELECT '2002', '3-6-02' FROM dual UNION ALL SELECT '2002', '7-6-02' FROM dual UNION ALL SELECT '2002', '9-6-02' FROM dual UNION ALL SELECT '2002', '13-2-02' FROM dual UNION ALL SELECT '2002', '22-10-02' FROM dual UNION ALL SELECT '2002', '1-11-02' FROM dual UNION ALL SELECT '2002', '30-12-02' FROM dual UNION ALL SELECT '2002', '3-10-02' FROM dual UNION ALL SELECT '2002', '14-2-02' FROM dual ) SELECT dt , CONCAT(CONCAT(CONCAT(CONCAT(CONCAT('20', yy), '-'), mm), '-'), dd) ymd FROM (SELECT dt , SUBSTR(dt, -2, 2) yy , LPAD(REPLACE(SUBSTR(dt, 3, LENGTH(dt)-5), '-', ''), 2, '0') mm , LPAD(REPLACE(SUBSTR(dt, 1, 2 ), '-', ''), 2, '0') dd FROM t ) a ;