Trabajar con fechas desde SQL
MySQL es realmente potente con el cálculo y el tratamiento de las fechas. Para sacar el máximo rendimiento disponemos de las siguientes instrucciones.

CURDATE()
Esta función da la fecha del día.

Ejemplo:

 SELECT CURDATE();

Obtenemos 2005-01-01, en el formato de fecha ‘Año-Mes-Día’ propio de MySQL.

Esta fecha sale en el formato año-mes-día que puede resultar un poco difícil de leer. Con DATE_FORMAT podemos dar formato a la salida del texto.

 SELECT DATE_FORMAT(CURDATE(),'%d/%m/%y');

con lo que se obtiene el formato día/mes/año usual.

DAYNAME()
Dada una fecha, esta función da el nombre en inglés del día de la semana correspondiente.

Ejemplo:

  SELECT DAYNAME(CURDATE());

Obtenemos por ejemplo, Sunday.

DAYOFWEEK()
Es complementaria de la anterior. En vez de darnos el nombre del día de la semana nos da un código numérico de 1 a 7. El código 1 representa el Domingo, el 2 el Lunes, y así hasta el 7 que representa el Sábado.

Ejemplo:

 SELECT DAYOFWEEK(CURDATE());

Obtenemos por ejemplo un 2,que indica el lunes.

DATE_FORMAT()
Nos permite presentar las fechas en otros formatos. Los formatos que usaremos son ‘%d/%m/%y’ y ‘%d/%m/%Y’.

Ejemplo:

 SELECT DATE_FORMAT(CURDATE(),’%d/%m/%Y');

Produce 23/04/2005.

DATE_ADD()
Esta función nos permite agregar a una fecha cierto número de días ( o meses y años)

Ejemplo: ¿Cuál es la fecha de dentro de 15 días?

 SELECT DATE_ADD(CURDATE(), INTERVAL 15 DAY);

también podriamos hacer

 SELECT DATE_FORMAT(DATE_ADD(CURDATE(),INTERVAL 15 DAY) ,’%d/%m/%Y');

DEJA UNA RESPUESTA

Please enter your comment!
Please enter your name here