Funciones de fecha y hora
MySQL proporciona varias funciones para trabajar con fechas y horas. Aquí tienes algunas de las funciones más comunes:
NOW:
La función NOW
devuelve la fecha y la hora actuales.
SELECT NOW() AS fecha_y_hora_actual;
CURDATE y CURTIME:
Estas funciones devuelven la fecha y la hora actuales, respectivamente, sin incluir la parte de tiempo.
SELECT CURDATE() AS fecha_actual, CURTIME() AS hora_actual;
DATE y TIME:
Estas funciones extraen la parte de fecha o tiempo de una fecha o hora.
SELECT DATE(NOW()) AS solo_fecha, TIME(NOW()) AS solo_hora;
EXTRACT:
La función EXTRACT
te permite obtener partes específicas de una fecha o hora, como año, mes o día.
SELECT EXTRACT(YEAR FROM NOW()) AS año_actual, EXTRACT(MONTH FROM NOW()) AS mes_actual;
DATE_FORMAT:
La función DATE_FORMAT
te permite formatear una fecha según un patrón específico.
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS fecha_formateada;
-- Resultado: '2023-10-26'
ADDDATE y SUBDATE:
Estas funciones suman o restan días a una fecha.
SELECT ADDDATE(NOW(), 7) AS fecha_en_7_dias, SUBDATE(NOW(), 3) AS fecha_hace_3_dias;
DATEDIFF:
La función DATEDIFF
calcula la diferencia entre dos fechas en días.
SELECT DATEDIFF(NOW(), '2023-01-01') AS dias_desde_inicio_de_ano;
TIMESTAMPDIFF:
La función TIMESTAMPDIFF
calcula la diferencia entre dos fechas en una unidad específica (días, horas, minutos, etc.).
SELECT TIMESTAMPDIFF(MONTH, '2022-01-01', NOW()) AS meses_desde_inicio_de_ano;
Estas son solo algunas de las funciones de fecha y hora que MySQL proporciona. Puedes combinar estas funciones para realizar cálculos más complejos o para formatear las fechas de acuerdo con tus necesidades específicas.
https://dev.mysql.com/doc/refman/8.2/en/date-and-time-functions.html