Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-06-2007
drakkon drakkon is offline
Miembro
 
Registrado: jun 2007
Posts: 21
Poder: 0
drakkon Va por buen camino
Question Resta de datos Datetime SQL

Tengo un pequeño problema por que no se como realizar una resta entre dos datos (datetime) de una tabla de una BD mysql. Bueno, me explico...

Tengo la tabla 'Rentas' en donde tengo los campos 'fecha_devol' y 'dias_retraso', es en este último donde debo calcular los dias que han transcurrido a partir de la fecha de devolucion. Para ello se me ocurre realizar una resta entre la fecha actual y la registrada en 'fecha_devol'. Pero no puedo hacerlo. Les agradecería mucho si pudieran decirme cómo hacer esto o tuvieran alguna mejor solución.
Responder Con Cita
  #2  
Antiguo 08-06-2007
Avatar de karlaoax
karlaoax karlaoax is offline
Miembro
 
Registrado: oct 2003
Ubicación: Monterrey
Posts: 280
Poder: 21
karlaoax Va por buen camino
Mira si no recuerdo mal los campos DATE se tratan como valores numericos

var
fechahoy,fecharenta:tdate;

Boton:
Fechahoy:=strtodate(txtFechahoy.text);
Fecharenta:=strtodate(txtFecharenta.text);
Fechatotal:=FechaHoy-Fecharenta;

if (Fechatotal<7)then //Le puse 7 digamos como para una modica multa
begin
showmessage('Ganaste una multa');
end
else begin
showmessage('Entrega a tiempo');
end;

Bueno, no he probado este codigo, pero si mi procesador Core 2 Duo no me falla en mi cabeza debe funcionar

Avisas si queda el codigo, si no para buscar una mejor solucion.
Si tienen mas sugerencias, bienvenidas para seguir aprendiendo a manejar Delphi.

Karla

Última edición por karlaoax fecha: 08-06-2007 a las 18:50:14.
Responder Con Cita
  #3  
Antiguo 08-06-2007
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 18
felipe88 Va por buen camino
Si usas componenetes con la fecha, como por ejemplo un monthcalendar,
puedes restarlas desde delphi primero convirtiendolas a string y luego a float manejando el tipo de variable como extended para poder soportar las fechas... tal vez asi con una que otra corrreccion:

procedure TForm1.BitBtn1Click(Sender: TObject);
var f1, f2, resultado : Extended;
fecha1, fecha2 : String;
begin
fecha1:= DateToStr(MonthCalendar1.Date);
fecha2:= DateToStr(MonthCalendar2.Date);
f1:= StrToFloat(fecha1);
f2:= StrToFloat(fecha2);
resultado:= Round(f1-f2); // La fecha uno obviamente debe ser mayor, la funcion round permite solo tener la fecha sin los decimales de la hora para evitar errores al comparar
Edit1.Text:= FloatToStr(resultado);
end;

Igualmente si la necesitas como fecha solo debes convertirla... Si tienes otra idea sera mejor...
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Resta de horas didier Varios 24 19-11-2010 00:11:54
Resta de fechas Y horas Iskariote0087 Varios 3 05-12-2006 23:31:05
REsta Fechas Juanito-Kun Firebird e Interbase 2 11-10-2005 21:52:23
Resta equivocada... jhonny Varios 6 26-09-2005 19:43:20
Resta de Tablas con SQL agova SQL 8 24-11-2003 22:20:25


La franja horaria es GMT +2. Ahora son las 10:31:34.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi