* 중요한 점 : 변환하려는 모든 문자형 데이터의 형식이 같아야한다. 가끔은 문자열로 된 날짜 데이터를 날짜형 데이터로 바꾸고자 하는 경우가 있습니다. 날짜형 데이터라고 한다면 datetime 형과 smalldatetime 형을 이야기 합니다. 날짜형 데이터인 경우는 다양한 날짜관련 함수를 이용한 응용이 가능하기 때문입니다. 하지만 그렇지 않은 경우, 즉 문자형으로 되어 있는 경우 날짜 함수를 이용하기 위해서는 문자열을 날짜형으로 바꾸어주는 과정이 추가로 필요하게 됩니다. 특히 웹을 통해 입력된 날짜를 테이블에 기록하게 되는 경우 다음과 같은 형태로 날짜가 테이블에 기록이 되는 경우가 많습니다. 2003-12-01 오전 10:30:21 2003-12-02 오후 05:12:25 위와 같이 기록이 될 경우 MS SQL 서버는 데이터 중간의 '오전' 또는 '오후'를 인식히자 못하기 때문에 위 문자열을 날짜형 데이터로 변환하기가 쉽지 않습니다. 이러한 문제로 위와 같은 데이터를 정확한 날짜형 데이터로 변환하고자 하는 경우가 많이 있습니다. 이를 위한 방법을 제시하고자 합니다. 1. 에러 확인 위에서 예시한 형태의 데이터가 테이블에 기록이 된 경우 발생하는 문제를 살펴보도록 하겠습니다. 다음과 같이 만들어진 테이블이 있다고 가정을 하겠습니다. CREATE TABLE Test ( col1 int, col2 varchar(25) ) GO 이 테이블에 다음과 같이 '오전' 또는 '오후' 가 포함된 데이터를 입력해 보겠습니다. INSERT INTO Test VALUES(1, '2003-10-01 오후 09:10:20') INSERT INTO Test VALUES(2, '2003-10-10 오전 10:30:20') GO 이 상태에서 날짜 연산함수 중의 하나인 DateAdd() 함수를 이용해서 한달을 더한 날짜를 얻어 보도록 하겠습니다. SELEC...
댓글
댓글 쓰기