Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

necesito sumar 21 dias a un campo tipo date

Estas en el tema de necesito sumar 21 dias a un campo tipo date en el foro de Bases de Datos General en Foros del Web. Sres. Phpmaniacos. necesito sumar 21 dias a un campo tipo date via query. es decir algo asi como: SELECT fecha FROM registroseguimiento WHERE ( DATEADD( ...
  #1 (permalink)  
Antiguo 22/10/2004, 08:57
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 20 años, 1 mes
Puntos: 0
necesito sumar 21 dias a un campo tipo date

Sres. Phpmaniacos.
necesito sumar 21 dias a un campo tipo date via query. es decir algo asi como:
SELECT fecha
FROM registroseguimiento
WHERE ( DATEADD( 'D', 21, fecha ) between '$fecha_inicio' and '$fecha_final'

selecciono las fachas que sumadas 21 dias estan entre fecha_inicio y fecha_termino.
Ya me he leido todos los manuales y faq de internet y no encuentro respuesta...
ojala alguien pueda ayudarme.
Atte
Maurimono :-p
  #2 (permalink)  
Antiguo 22/10/2004, 09:28
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
Hola,

¿Que motor de base de datos usas? Porque la sintaxis SQL varia de uno a otro. Por ejemplo, en MySQL tienes las funciones ADDDATE y DATE_ADD (http://dev.mysql.com/doc/mysql/en/Da...functions.html), con sintaxis distintas a la tuya. Tambien puede cambiar la forma de expresar las cadenas de fechas, y los formatos.

De todas formas, creo que es mejor

SELECT *,ADDDATE(fecha, INTERVAL 21 DAY) as fecha_futura FROM tabla WHERE fecha_futura BETWEEN '$fecha_inicio' AND '$fecha_final'

si tu base de datos es MySQL. Y fecha_inicio y fecha_final deben estar en el formato AAAA-MM-DD.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 22/10/2004, 10:14
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 20 años, 1 mes
Puntos: 0
exactamente!!!!

SELECT fecha
FROM registroseguimiento
WHERE DATE_ADD( fecha, INTERVAL 21
DAY )
BETWEEN '2001/10/01' AND '2004/10/30'

este es el resultado de la query correcta!

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:12.