PHP - Restar dias a una fecha

 
Vista:
sin imagen de perfil

Restar dias a una fecha

Publicado por Victor (195 intervenciones) el 26/11/2014 14:27:27
Buenas tardes gente.

Alguien me podría decir como le resto en SQL x numero de días a una fecha.
Restar dos fecha si sé hacerlo pero restarle a una fecha solo con uno de sus valores no

Gracias de antemano.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Restar dias a una fecha

Publicado por xve (6935 intervenciones) el 26/11/2014 19:03:36
Hola Victor que motor de base de datos estas utilizando?

si lo quieres hacer con PHP directamente, haber si te sirve este código:
http://lwp-l.com/s2150
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Restar dias a una fecha

Publicado por Victor (195 intervenciones) el 26/11/2014 19:21:41
Buenas tardes.

Estoy utilizando PhpMyAdmin
Y la version 5.5.27 de MySQL

No lo he probado aún pero creo que si que sirve.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Restar dias a una fecha

Publicado por zendi (1056 intervenciones) el 26/11/2014 19:42:58
Hola Victor, utiliza este codigo a ver.

1
2
3
4
5
6
7
8
9
10
echo $date2 = date('Y-m-d');//la fecha del computador
echo "</br>";
 
echo $diff = abs(strtotime($date2) - strtotime('2014-02-04'));
echo "</br> Años";
echo $years = floor($diff / (365*60*60*24));
echo "</br> Meses";
echo $months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
echo "</br> Dias";
echo $days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));




Comentanos ok.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Restar dias a una fecha

Publicado por Rafael (40 intervenciones) el 27/11/2014 11:18:32
Directamente en MySQL puedes usar la funcion DATE_ADD(date,INTERVAL expr type)

Ejemplo:
1
2
3
SELECT OrderId
     ,DATE_ADD(OrderDate,INTERVAL 45 DAY) AS OrderPayDate
FROM Orders

Y si quieres restar:
1
2
3
SELECT OrderId
     ,DATE_ADD(OrderDate,INTERVAL -1 DAY) AS OrderPayDate
FROM Orders

Recordar que en MySQL como en casi todas las Bases de Datos los tipos DATE, en realidad conservan FECHA + HORA, MINUTOS y SEGUNDOS

Ahora bien esta funcion en la parte INTERVAL acepta valores tales como:
MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH

Suerte ya nos contaras
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Restar dias a una fecha

Publicado por zendi (1056 intervenciones) el 28/11/2014 00:54:46
Hola Rafael, para mysql si tiene esta funcion estoy de acuerdo.
Mis preguntas son: Que funcion seria para postgresql? y como se aplicaria esta funcion en un input type, ya que mi objetivo es que cuando se pierda el enfoque en el input calcule los dias, meses y años es decir la edad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Restar dias a una fecha

Publicado por Rafael (40 intervenciones) el 28/11/2014 12:22:52
Vaya en la pregunta original hablaban de MySQL ...

Para Postgresql:
http://www.postgresql.org/docs/9.1/static/functions-datetime.html

Pero en resumen seria:
1
2
3
SELECT OrderId
      , OrderDate - INTERVAL '1 day' AS OrderPayDate
FROM Orders

Ahora para calcular la edad de un Input el tema iria mas de Javascript que de la Base de Datos
te dejo un link de esta misma pagina
http://www.lawebdelprogramador.com/codigo/JavaScript/2380-Calcular_la_edad_desde_una_fecha_dada_en_HTML5.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Restar dias a una fecha

Publicado por Victor (195 intervenciones) el 28/11/2014 18:14:33
Buenas tardes.

El ejemplo me sirvio pero el asunto se me complica.

El asunto es que tengo que sumar:
una fecha concreta+numero de dias+otro numero de dias
Y como resultado obtener un date:YYYY/MM/DD

Sé que tengo que usar AS pero no recuero como.

Se escuchan sugerencias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Restar dias a una fecha

Publicado por roberto gallego caballero (2 intervenciones) el 05/04/2017 07:34:40
Buenos días. Te adjunto un código que hace tiempo encontré en alguna web.. Salu2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 
$timeActual= time();   // Obtenemos el timestamp del momento actual
$fecha_vto='2017-03-20';
    $timeVencimiento = strtotime($fecha_vto); // Obtenemos timestamp de la fecha de vencimiento
 
    // Calculamos el número de segundos que tienen esos 3 días
    $segundos = 3 * 24 * 60 * 60;
 
    // Condición: Si la diferencia entre la fecha de vencimiento y la fecha actual es menor de 3 días
    if( $timeVencimiento-$timeActual < $segundos) {
          echo "Va a expirar en menos de 3 días";
    }else{
         echo "Vigente";
   }
 
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar