2009-04-08 18 views
6

tengo una fecha en este formatoConvertir fechas con MySQL

de mayo de de 2006 30 de 12:00a.m.

hay un equivalente de strtotime() en MySQL que me permita convertir esto en una fecha MySQL?

Respuesta

16

Creo que está buscando la función STR_TO_DATE. Por desgracia, no es tan impresionante como PHP de strtotime, así que hay que darle una máscara de formato para analizar:

mysql> SELECT STR_TO_DATE('04/31/2004', '%m/%d/%Y'); 
     -> '2004-04-31' 

Para su fecha, creo que la máscara sería %M %e %Y %l:%i%p, dependiendo de si está o no está esperando nombres de mes cortos/largos y días basados ​​en 0. Basado en su ejemplo podría ser:

mysql> SELECT STR_TO_DATE('May 30 2006 12:00AM', '%M %e %Y %l:%i%p'); 
+--------------------------------------------------------+ 
| STR_TO_DATE('May 30 2006 12:00AM', '%M %e %Y %l:%i%p') | 
+--------------------------------------------------------+ 
| 2006-05-30 00:00:00         | 
+--------------------------------------------------------+ 
1 row in set (0.00 sec) 

Mira la full reference table de las opciones de máscara.

+0

formuladas y contestadas. – tpdi

+1

¿Qué quieres decir? –