Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 문자열(varchar)을 타임스탬프 형식으로 변환하시겠습니까?

<시간/>

문자열을 타임스탬프 형식으로 변환하려면 DATE_FORMAT()과 함께 STR_TO_DATE()를 사용하십시오. 먼저 테이블을 생성하겠습니다 -

mysql> Create table DemoTable1602 -> ( -> ReportingDate varchar(40) -> );쿼리 OK, 영향을 받은 행 0개(0.51초)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable1602 values('Wed Oct 02 16:10:45 IST 2019');Query OK, 1개의 행이 영향을 받았습니다(0.20초)mysql> insert into DemoTable1602 values('Fri May 31 13:00:10 IST 2019');쿼리 OK, 1행 영향(0.13초)mysql> DemoTable1602 값에 삽입('Mon Dec 31 14:20:00 IST 2018');쿼리 OK, 1행 영향(0.23초)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> DemoTable1602에서 * 선택;

이것은 다음과 같은 출력을 생성합니다 -

+------------------------------+| 보고날짜 |+------------------------------+| 10월 2일 수요일 16:10:45 IST 2019 || 5월 31일 금요일 13:00:10 IST 2019 || Mon Dec 31 14:20:00 IST 2018 |+--------------------------------------------+3행 세트(0.00초) )

다음은 MySQL에서 문자열을 타임스탬프 형식으로 변환하는 쿼리입니다 -

mysql> DemoTable1602에서 date_format(str_to_date(ReportingDate,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') 선택; 

이것은 다음과 같은 출력을 생성합니다 -

+---------------------------------------------- ------------------------------------+| date_format(str_to_date(보고 날짜,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') |+-------- -------------------------------------------------- ------------------------+| 2019년 2월 10일 16:10:45 || 31-05-2019 13:00:10 || 2018년 12월 31일 14:20:00 |+------------------------------------------------------ --------------------------------------------+3행 세트( 0.03초)