Fechas

En un campo de MySQL tengo un campo fecha, hago un query a un registro y rescato el campo de fecha, con el cual necesito generar otra fecha sumandole o restando dias.... Y no he podido hacerlo....si pude hacerlo con la fecha del sistema : $fecha=date("Y-m-d", time() + (60*60*24*2)) o algo asi; pero con una variable no....hay alguna otra forma ......helpme please.
Gracias
Respuesta
1
A ver si te entiendo, ¿creo qué necesitas sumar o restar días a una fecha de un query de mysql? Bueno si es así, solo tienes que colocar lo siguiente:
mysql> SELECT INTERVAL 1 DAY + '1997-12-31';
Lo que haces aquí le agregas un día a la fecha 1997-12-31 y te da como resultado:
-> '1998-01-01'
O sea debes ocupar el comando INTERVAL 'n' DAY donde 'n' es numero de días que quieres agregar o restar a una fecha determinada.
Ahora segun tu ejemplo sale date("Y-m-D", time() + (60*60*24*2)) deberia de ser:
mysql> SELECT DATE_ADD('1997-12-31 23:59:59', INTERVAL 1 DAY);
Y te muestra:
-> '1998-01-01 23:59:59'
Y si quieres restar ocupa:
mysql> SELECT DATE_SUB('1998-01-01 00:00:00',INTERVAL '1 1:1:1' DAY_SECOND);
y muestra:
-> '1997-12-30 22:58:59'
En este ejemplo de resta, lo que le estas diciendo es que te reste 1 1:1:1 o sea 1 día, 1 hora, 1 minuto, 1 segundo. Por eso te muestra el resultado 1997-12-30 (resto un día), 22 (resto 1 hora), 58 (un minuto), 59 (un segundo). Si te fijas en hora y minuto restos 2 (aunque en verdad es 1), pero como el que manda es el segundo, si sumamos este segundo el minuto quedaría en 59 (ahí esta el minuto restado) y así mismo con la hora.
Bueno espero que te sirva, si no es eso, pregunta de nuevo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas