TIMESTAMPADD
Suma a una fecha el número indicado de unidades de tiempo.
MySQL 8.4
TIMESTAMPADD(unit, value, datetime)- unit
- Unidad del intervaloPalabra claveMICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEAR
- value
- Número de unidades; puede ser negativoINT
- datetime
- Fecha o fecha y hora de origenDATETIME
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
Tres horas a una fecha
MySQL 8.4
SELECT TIMESTAMPADD(HOUR, 3, '2022-12-05 10:37:22') AS shifted;Un mes al 31 de enero
MySQL 8.4
SELECT TIMESTAMPADD(MONTH, 1, '2024-01-31') AS next_month;Valor negativo
MySQL 8.4
SELECT TIMESTAMPADD(MINUTE, -90, '2022-12-05') AS shifted;Detalles
A diferencia de DATE_ADD, la unidad va como primer argumento, y las unidades compuestas como HOUR_MINUTE no se admiten.