2013-02-27 6 views
0

데이터 형식이 varchar 인 time_stamp 열이있는 테이블이 있습니다. "2/28/2013 11:33:45 am"형식으로 데이터를 제공합니다. varchar에서 datetime 함수를 적용 할 수 없으므로이 데이터 형식을 datetime으로 변경하고 싶습니다.데이터 형식을 varchar에서 datetime 형식으로 변경하고 이전 데이터 복원

이미 해당 테이블에 많은 데이터가 있으므로 해당 데이터 형식을 변경하고 모든 데이터를 복원하려고합니다.

어떻게하면됩니까?

+0

가에 대한 전망을 시도하여 날짜로 변환 할 필요가있다. 감사합니다 – c0dem0nkey

+0

내가보기를 만들려고했는데 다음 모든 tiestamp varchar 값이 null이됩니다. – user1896796

답변

0

당신은 STR_TO_DATE

SELECT * 
FROM tablename 
WHERE STR_TO_DATE(time_stamp, '%m/%d/%Y %h:%i:%s %p') = CURDATE() 
+0

그래서 str_to_date로보기를 만드는 것은 tablename의 new_time_stamp처럼 select *, STR_TO_DATE (time_stamp, '% e/% d/% Y % h : % i : % s % r' – mika

+0

@mika, yep, 그리고 그 시점에서,'new_time_stamp'는 이미 datetime 데이터 타입입니다. –

+0

new_time_stamp는 null 값을 가져옵니다. 모든 varchar 값을 변환하고 나중에 사용해야합니다. – user1896796

관련 문제