![]() |
Problema con Rango de Fecha
Que tal a Todos..
Tengo la siguiente consulta:
Si a al campo a.fechapago le asigno la misma fecha no me trae ningun registro (y los hay en la DB) si le pongo un rango de dos dias si funciona. Ej. si le pongo '02/28/2007' and '02/28/2007' no trae nada si le pongo '02/28/2007' and '03/01/2007' me trae solo los del dia 28 Que estoy haciendo mal? Una mano necesito... Nota: Uso Interbase 6.5 Dialect 1 |
Seguro que es un problema de "redondeo". Las fechas en muchos casos indican más que el día, también la hora. Si sólo quieres quedarte con las fechas tienes que ignorar la parte decimal de la fecha. Yo uso un método poco elegante... pero funciona:
trunc(a.FECHAPAGO) |
Primero habrá que ver como está definido el campo de fecha, si como DATE, TIMESTAMP, etc.
Después como mandas los parámetros a la consulta, si como fecha o como string. Saludos |
El problema apunta a lo que comentan el resto de los compañeros. Cuando pones la fecha entre el 28/2/07 y 28/2/07 estas realmente preguntando los registros entre las fechas 28/2/07 a las 00:00:00 horas y el 28/2/07 a las 00:00:00 horas.
El otro caso es entre el 28/2/07 a las 00:00:00 y el 1/3/07 00:00:00 horas. Por lo tanto o haces un cast como bien apuntan o añades la hora a las fechas; 00:00:00 a la primera y 24:00:00 a la segunda. Un saludo |
O Añades +1 a la fecha mayor:).
Saludos |
Gracias Muchachos por responder... termine sumandole uno a la mayor y funciona...
|
La franja horaria es GMT +2. Ahora son las 05:02:33. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi