Ver Mensaje Individual
  #11  
Antiguo 04-06-2008
nasedo nasedo is offline
Miembro
 
Registrado: jun 2005
Posts: 24
Reputación: 0
nasedo Va por buen camino
Cita:
Empezado por vroa74 Ver Mensaje
Hola:
sigo con el pequeño problema de no poder filtrar buen la base de datos, debe ser por algun detalle. el problema es cuando seleciono un rago de fechas es codigo que uso es:
Código Delphi [-] MyQuery1.SQL.Add('(Date_Format(servicios.f_ini,''%d/%m/%Y'') >= '+ QuotedStr(DateToStr(JvDateTimePicker1.Date)) +') AND ( Date_Format(servicios.f_ini,''%d/%m/%Y'') <='+ QuotedStr(DateToStr(JvDateTimePicker2.Date)) +')');


mas sin embargo me sigue haciendo cosas que no le veop sentido.
por ejemplo

si seleciono un rango de fecha 01/02/2008 al 04/06/2008 me da solo 3 registros y en la base de datos de prueba en ese rango de fecha hay 21 registros.
los registros que me da son lso que inicia con 1 y 2 de cada mes, tego registro con dias 15 19 20 22 30 de cada mes mas eso nos lo muestra..

es teoria deberia estar mostrando todos alguien me podria ayudar para saber en que estoy fallando.


mira compañero,

si quieres seleccionar en un rango de fechas utiliza en BETWEEN

algo asi:

Código Delphi [-]
var
  FIni, FFin  :String;
  A,M,D : Word;

DecodeDate(JvDateTimePicker1.Date,A,M,D);
FIni := IntToStr(A) + '-' + IntToStr(M)+ '-' + IntToStr(D);
DecodeDate(JvDateTimePicker2.Date,A,M,D);
FFin := IntToStr(A) + '-' + IntToStr(M)+ '-' + IntToStr(D);

MyQuery1.SQL.Add('WHERE servicios.f_ini BETWEEN '+QuotedStr(Fini) + ' AND ' + QuotedStr(FFin));


asi de sencillo!!! :P
ahi platicas si funcionó!!

Última edición por nasedo fecha: 04-06-2008 a las 21:05:31.
Responder Con Cita