날짜 유효성 검사.. 0 3 1,437

by 손님 [2007.07.20 17:34:15]


테이블의 날짜 컬럼에 데이타가 잘못 들어가 있습니다.

 

'20070732'.. 이런식으로요.  (잘못된 형식이 꼭 같지는 않습니다..)

 

이런 데이타들을 찾아내서 올바른 값으로 고쳐야 하는데..

 

어떻게 해야할지 모르겠습니다.

 

도움 부탁드립니다......

 

select to_date('20070732', 'yyyymmdd') from dual

이렇게 하면 에러가 나는것까지밖에 모르겠습니다.

 

부디...

by 정승용 [2007.07.20 00:00:00]
성능은 잘 모르겠고 날짜 칼럼 NOT IN (날짜 더미 테이블) 이렇게 하면 되지 않을까요...

by finecomp [2007.07.20 00:00:00]
윤년등까지 감안 한다면 정승용님 방법이 가장 정확한 방법이겠죠...물론 더미테이블의 데이터가 정확히 만들어져 있어야 겠죠...^^;

건승하시길...수고하세요~~

by 마농 [2007.07.22 00:00:00]
CREATE OR REPLACE FUNCTION f_date_check(s_date IN VARCHAR2)
RETURN VARCHAR2
IS
d_date DATE;
BEGIN
d_date := TO_DATE(s_date,'yyyymmdd');
RETURN 'DATE';
EXCEPTION
WHEN OTHERS THEN
RETURN 'ERROR';
END
;
SELECT * FROM 테이블
WHERE f_date_check(날짜컬럼) = 'ERROR'
;
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입