Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #14  
Antiguo 02-03-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Bueno, se supone que todo mes es menor o igual que 12 y mayor o gual que 1, por lo que esos dos condicionales sobrarían.

Lo de la evaluación previa, creo que podemos hacerla en la misma consulta comparando los parámetros en sí:

Código SQL [-]
select * from personas
where
  ( 
    (100*:mi + :di < 100*:mf + :df) and
    (
      (100*:mi + :di < 100*extract(month from fecha) + extract(day from fecha)) and
      (100*extract(month from fecha) + extract(day from fecha) < 100*:mf + :df)
    )
  )
  or
  (
    (100*:mi + :di > 100*:mf + :df) and
    (
      (100*:mi + :di < 100*extract(month from fecha) + extract(day from fecha)) or
      (100*extract(month from fecha) + extract(day from fecha) < 100*:mf + :df)
    )
  )

Un ejemplo de uso:

Código Delphi [-]
var
  mi, mf, di, df: Integer;

begin
  Query1.ParamByName('mi').AsInteger := MonthOf(DateTimePickerInicial.Date);
  Query1.ParamByName('di').AsInteger := DayOf(DateTimePickerInicial.Date);

  Query1.ParamByName('mf').AsInteger := MonthOf(DateTimePickerFinal.Date);
  Query1.ParamByName('df').AsInteger := DayOf(DateTimePickerFinal.Date);

  Query1.Open;
end;

Conste que puse 100 para que no se extrañen .

No la he probado del todo pero creo que funciona salvo porque me falta el caso de que las fechas inicial y final sean iguales, pero no debe ser mayor problema.

// Saludos
Responder Con Cita
 



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
Encontrar importe Waldo Varios 2 14-01-2010 19:39:08
Donde encontrar b0rn OOP 3 03-04-2007 01:05:22
Cómo encontrar Roilo Varios 1 07-12-2005 15:48:12
Encontrar la paz interior santana Humor 3 14-06-2004 18:47:35
encontrar el siguiente en ado jzginez Conexión con bases de datos 1 21-05-2004 11:42:08


La franja horaria es GMT +2. Ahora son las 04:09:02.


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