Sintaxis

STR_TO_DATE(str,format)

Descripción

Esta es la inversa de la DATE_FORMAT() función. Toma un string str y un formato string format. STR_TO_DATE() devuelve un DATETIME valor si el formato string contiene partes de fecha y hora, o un DATE o TIME valor si el string contiene solo partes de fecha u hora.

Los valores de fecha, hora o fecha y hora contenidos en str debe darse en el formato indicado por formato. Si str contiene una fecha, hora o valor de fecha y hora ilegal, STR_TO_DATE() devoluciones NULL. Un valor ilegal también produce una advertencia.

Las opciones que puede usar STR_TO_DATE (), así como su inversa DATE_FORMAT () y la función FROM_UNIXTIME (), son:

Opción Descripción
%a Nombre corto del día de la semana en la configuración regional actual (variable lc_time_names).
%b Nombre del mes de forma abreviada en la configuración regional actual. Para la configuración regional en_US, este es uno de los siguientes: enero, febrero, marzo, abril, mayo, junio, julio, agosto, septiembre, octubre, noviembre o diciembre.
%c Mes con 1 o 2 dígitos.
%D Día con sufijo en inglés ‘th’, ‘nd’, ‘st’ o ‘rd’ ‘. (1º, 2º, 3º …).
%d Día con 2 dígitos.
%e Día con 1 o 2 dígitos.
%f Segundos secundarios 6 dígitos.
%H Hora con 2 dígitos entre 00-23.
%h Hora con 2 dígitos entre 01-12.
%I Hora con 2 dígitos entre 01-12.
%i Minuto con 2 dígitos.
%j Día del año (001-366)
%k Hora con 1 dígito entre 0-23.
%l Hora con 1 dígito entre 1 y 12.
%M Nombre del mes completo en la configuración regional actual (variable lc_time_names).
%m Mes con 2 dígitos.
%p AM / PM según la configuración regional actual (Variable lc_time_names).
%r Hora en formato de 12 horas, seguida de AM / PM. Abreviatura de ‘% I:% i:% S% p’.
%S Segundos de 2 dígitos.
%s Segundos de 2 dígitos.
%T Hora en formato de 24 horas. Abreviatura de ‘% H:% i:% S’.
%U Número de semana (00-53), cuando el primer día de la semana es domingo.
%u Número de semana (00-53), cuando el primer día de la semana es el lunes.
%V Número de semana (01-53), cuando el primer día de la semana es domingo. Usado con% X.
%v Número de semana (01-53), cuando el primer día de la semana es el lunes. Usado con% x.
%W Nombre completo del día de la semana en la configuración regional actual (variable lc_time_names).
%w Día de la semana. 0 = domingo, 6 = sábado.
%X Año con 4 dígitos cuando el primer día de la semana es domingo. Usado con% V.
%x Año con 4 dígitos cuando el primer día de la semana es lunes. Usado con% v.
%Y Año con 4 dígitos.
%y Año con 2 dígitos.
%# Para str_to_date (), omita todos los números.
%. Para str_to_date (), omita todos los caracteres de puntuación.
%@ Para str_to_date (), omita todos los caracteres alfabéticos.
%% Un literal % personaje.

Ejemplos de

SELECT STR_TO_DATE('Wednesday, June 2, 2014','%W, %M %e, %Y');+---------------------------------------------------------+| STR_TO_DATE('Wednesday, June 2, 2014','%W, %M %e, %Y')|+---------------------------------------------------------+|2014-06-02|+---------------------------------------------------------+SELECT STR_TO_DATE('Wednesday23423, June 2, 2014','%W, %M %e, %Y');+--------------------------------------------------------------+| STR_TO_DATE('Wednesday23423, June 2, 2014','%W, %M %e, %Y')|+--------------------------------------------------------------+|NULL|+--------------------------------------------------------------+1rowinset,1 warning (0.00 sec)SHOWWARNINGS;+---------+------+-----------------------------------------------------------------------------------+|Level| Code | Message                                                                           |+---------+------+-----------------------------------------------------------------------------------+| Warning |1411| Incorrect datetimevalue: 'Wednesday23423, June 2, 2014'forfunction str_to_date |+---------+------+-----------------------------------------------------------------------------------+SELECT STR_TO_DATE('Wednesday23423, June 2, 2014','%W%#, %M %e, %Y');+----------------------------------------------------------------+| STR_TO_DATE('Wednesday23423, June 2, 2014','%W%#, %M %e, %Y')|+----------------------------------------------------------------+|2014-06-02|+----------------------------------------------------------------+

Ver también

  • FORMATO DE FECHA()
  • FROM_UNIXTIME ()

El contenido reproducido en este sitio es propiedad de sus respectivos dueños, y MariaDB no revisa este contenido con anticipación. Los puntos de vista, la información y las opiniones expresadas por este contenido no representan necesariamente las de MariaDB o de cualquier otra parte.