Home > Mysql > Funciones de Fecha y Hora en MySQL

Vamos a ver algunas funciones básicas para fecha y hora, estas funciónes son usadas para manipular el formato como se mostrara una fecha y una hora.

CURDATE() :

Esta función devuelve la fecha actual en formato ‘YYYY-MM-DD’ o ‘YYYYMMDD’ (Año-Mes-Día)

mysql> select curdate();
–> 2007-01-03

CURTIME() :

Devuelve la hora actual en formato ‘HH:MM:SS’ o ‘HHMMSS’.

mysql> select curtime();
–> 17:33:07

DATEDIFF(expression1,expression2) :

expression1 y expression2 son expresiones fecha o fecha-y-hora. Esta función devuelve expression1 – expression2 expresados como un valor en días de una fecha a la otra. Aquí sólo las partes de fecha serán consideradas para el cálculo.

mysql> select datediff(‘2007-2-6 17:33:25′,’2007-1-1’);
–> 36

DATE_ADD(fechahora, INTERVAL tipo expresión fechahora) :

Esta función de fecha añade la expresión a la datetime suministrada.

mysql> select date_add(‘2007-1-14’, interval 15 day);
–> 2007-01-29

Esta función es la misma para DATE_SUB, pero tomará lugarsubstrayéndola en vez de añadiéndola.

DAYNAME(fecha) :

Devuelve el nombre del día para una fecha especificada.

mysql> select dayname(‘2007-01-04’);
–> Thursday

DAYOFMONTH(fecha) or DAY(fecha) :

Devuelve la fecha para el día del mes en el rango de 1 a 31. DAY () es un sinónimo para DAYOFMONTH().

mysql> select dayofmonth(‘2007-01-04’);
–> 4

DAYOFWEEK(fecha) :

Devuelve el día de la semana en formato numérico como 1 para Domingo hasta 7 para Sábado.

mysql> select dayofweek(‘2007-01-04’);
–> 5

DAYOFYEAR(fecha) :

Devuelve el día del año para la fecha dada en formato numérico, en rago de 1 a 366.

mysql> select dayofyear(‘2007-07-09’);
–> 190

HOUR(hora) :

Devuelve la hora del tiempo especificado en formato numérico de 0 a 23.

mysql> select hour(’14:46:12′);
–> 14

MINUTE(hora) :

Devuelve el minuto del tiempo especificado en formato numérico de 0 a 59.

mysql> select minute(’14:46:12′);
–> 46

MONTH(fecha) :

Devuelve el mes para la fecha dada en formato numérico en rango de 0 a 12.

mysql> select month(‘2007-07-09’);
–> 7

MONTHNAME(fecha) :

Devuelve el nombre del mes para la fecha especificada.

mysql> select monthname(‘2007-07-09’);
–> July

NOW() :

Esta función de fecha devuelve la fecha y hora actual en formato ‘YYYY-MM-DD HH:MM:SS’ o YYYYMMDDHHMMSS (Año-Mes-Día Hora:Minuto:Segundo)

mysql> select now();
–> 2007-01-04 14:56:15