Referencia de funciones

ADDDATE

Suma a una fecha un intervalo de tiempo o un número de días.

MySQL 8.4
ADDDATE(date, INTERVAL expr unit | days)
  • a | buna de las opciones
date
Fecha o fecha y hora de origen
DATE
INTERVAL expr unit
Intervalo que se suma, por ejemplo INTERVAL 7 DAY
expr
Cuántas unidades se suman
unit
Unidad del intervalo
Palabra clave
MICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEARSECOND_MICROSECONDMINUTE_MICROSECONDMINUTE_SECONDHOUR_MICROSECONDHOUR_SECONDHOUR_MINUTEDAY_MICROSECONDDAY_SECONDDAY_MINUTEDAY_HOURYEAR_MONTH
days
Número de días como forma abreviada en lugar de INTERVAL
INT

Valor devuelto

Fecha si a una fecha se suman días o unidades mayores; si no, fecha y hora; si el día no existe en el mes, se usa el último día del mes

Ejemplos

Diez días más a una fecha

MySQL 8.4
SELECT ADDDATE('2022-06-16', INTERVAL 10 DAY) AS new_date;
new_date
2022-06-26

Forma abreviada con días

MySQL 8.4
SELECT ADDDATE('2022-06-16', 10) AS new_date;
new_date
2022-06-26

Unidad de intervalo compuesta

MySQL 8.4
SELECT ADDDATE(
		'2022-06-16 10:00:00',
		INTERVAL '1:30' HOUR_MINUTE
	) AS new_date;
new_date
2022-06-16 11:30:00

Detalles

En lugar de la función, puedes sumar o restar un intervalo con un operador: date + INTERVAL 7 DAY. En PostgreSQL esta función no existe: la fecha se desplaza con el mismo operador, pero el intervalo se escribe como cadena: date + INTERVAL '7 days'.

Unidad compuestaFormato de la cadena exprEjemplo
SECOND_MICROSECONDsegundos.microsegundos'10.000500'
MINUTE_MICROSECONDminutos:segundos.microsegundos'5:10.000500'
MINUTE_SECONDminutos:segundos'5:10'
HOUR_MICROSECONDhoras:minutos:segundos.microsegundos'2:05:10.000500'
HOUR_SECONDhoras:minutos:segundos'2:05:10'
HOUR_MINUTEhoras:minutos'1:30'
DAY_MICROSECONDdías horas:minutos:segundos.microsegundos'1 2:05:10.000500'
DAY_SECONDdías horas:minutos:segundos'1 2:05:10'
DAY_MINUTEdías horas:minutos'1 2:05'
DAY_HOURdías horas'1 12'
YEAR_MONTHaños-meses'1-6'

Véase también