STR_TO_DATE 함수는 인자로 주어진 스트링을 지정된 포맷에 따라 해석한 후 이를 날짜/시간 값으로 변환하며, DATE_FORMAT 함수와 반대로 동작한다. 리턴 값은 스트링에 포함된 날짜 또는 시간 부분에 따라 타입이 결정되며, DATETIME, DATE, TIME 타입 중 하나이다. 만약, string에 유효하지 않은 날짜나 시간 값이 포함되거나, format에 지정된 포맷 지정자를 적용하여 스트링을 해석할 수 없는 경우, 에러를 리턴한다.
STR_TO_DATE(string, format)
SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y');
=======================================
05/01/2013
SELECT STR_TO_DATE('May 1, 2013','%M %d,%Y');
=========================================
05/01/2013
SELECT STR_TO_DATE('a09:30:17','a%h:%i:%s');
========================================
09:30:17 AM
SELECT STR_TO_DATE('09:30:17a','%h:%i:%s');
=======================================
09:30:17 AM