Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
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 11-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Consulta con TIMESTAMP no devuelve nada

Hola a todos.

Bueno, tengo el siguiente inconveniente, he realizado una consulta la cual como parametro le estoy enviando la fecha y la hora pero no me devuelve valor alguno, cabe anotar que el campo al que estoy haciendo referencia en esta consulta ya se encuentran definidos previamente como "timestamp". El caso es que si realizo una consulta tal como muestro a continuación me trae información perteneciente a esa fecha en particular

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (CAST(FECHA AS DATE) = '09/10/2007')

Pero cuando trato de hacerlo así

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (CAST(FECHA AS DATE) = '09/10/2007')
AND (CAST(FECHA AS TIME) = '10:08:09 p.m.')

No me trae valores. Es importante que en la consulta se tenga en cuenta la fecha y hora debido a que en un día se pueden ingresar N registros.

Otra forma que utilice fue la siguiente

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (CAST(FECHA AS Timestamp) = '09/10/2007 20:08:09')

Y no me trae ningúna valor, y opte por realizarlo no que el formato de hora anteriomente mostrado sino como me aparece en la tabla.

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (CAST(FECHA AS Timestamp) = '09/10/2007 10:08:09 p.m.')

Y me muestra un "error de conversión de string".


Agradezco si alguien conoce la manera de cómo poder incluir la fecha y la hora en una consulta que contenga el campo de referencia como formato timestamp
Responder Con Cita
  #2  
Antiguo 11-09-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Yo lo tengo hecho así y me funciona perfectamente :

Código SQL [-]
Select * from IEGRESOS where FECHA = 'mm/dd/yyyy hh:nn:ss'

siendo FECHA un campo del tipo TimeStamp y sustituyendo mm/dd/yyyy hh:nn:ss por la fecha y la hora correspondiente (encerrada entre comillas).

Nota : Presta atención que al menos en Interbase (yo utilizo la Ver 7.5), el formato de fecha tiene que ser primero el mes y después el día.

Saludos
__________________
Piensa siempre en positivo !
Responder Con Cita
  #3  
Antiguo 11-09-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
... y si lo que te interesa es los datos de una fecha (o un margen de fechas) sin importar la hora, yo lo que hago es :

Código SQL [-]
Select * from IEGRESOS
where FECHA >= 'mm/dd/yyyy 00:00:00'
and FECHA <= 'mm/dd/yyyy 23:59:59'

volviendo a sustitur mm/dd/yyyy por la fecha correspodiente (o margen de fechas).
__________________
Piensa siempre en positivo !
Responder Con Cita
  #4  
Antiguo 11-09-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.732
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Firebird también utiliza la fecha con formato mm/dd/yyyy hh:mm:ss

También puedes utilizar :

Código SQL [-]
Select * from IEGRESOS
where FECHA between 'mm/dd/yyyy 00:00:00' and 'mm/dd/yyyy 23:59:59'
Responder Con Cita
  #5  
Antiguo 11-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
De antemano agradezco a todos su interes por colaborar y darme alguna idea a este inconveniente que acabo de postear, sin embargo, mi necesidad se enceuntra en que necesito un registro el cual contiene una fecha y hora especifica. Para más datos estoy trabajando con Firebird 2.0.

PD: Intente lo anterior pero sigue sin mostrarme nada aun.
Responder Con Cita
  #6  
Antiguo 11-09-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Pues insisto :

Ahora mismo estoy trabajando con datos, y uno de mis campos está creado como TimeStamp

Esta consulta
Código SQL [-]
Select * from MiTabla where CREADO = '09/11/2007 14:56:38'
me devuelve correctamente el dato que busco, y que acabo de crear hoy a las 14:56:38.

__________________
Piensa siempre en positivo !
Responder Con Cita
  #7  
Antiguo 11-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
"gluglu", voy a revisar la verdad es que la consulta la he hecho utilizando "cast()" como te puede dar cuenta.... vamos a ver que me genera si no se lo incluyo y les cuento... gracias!
Responder Con Cita
  #8  
Antiguo 11-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
bueno realice la consulta tal como me habian indicado pero aun sigue sin traerme ningún valor, la consulta es la siguiente

Código SQL [-]
SELECT *
FROM IEGRESOS
WHERE (FECHA = '09/10/2007 22:08:09')
Responder Con Cita
  #9  
Antiguo 11-09-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
La consulta la generas en tiempo de ejecución ?? Si es así podrías poner el código para mayor claridad.

Supongo que estarás seguro que existen registros que cumplen esa condición. Has probado ejecutar dicha consulta con IBExpert o IBConsole ?
__________________
Piensa siempre en positivo !
Responder Con Cita
  #10  
Antiguo 11-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
La consulta la estoy ejecutando directamente por medio del EMS Interbase/Firebird Manager..... y aun nada......
Responder Con Cita
  #11  
Antiguo 12-09-2007
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Bueno probando y probando un poco se me ocurrio lo siguiente

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (cast(FECHA as date) = '09/10/2007')
and (cast(FECHA as time) > '22:08:09')

Me muestra los registros que como pueden ver se ingresaron este dia duranta o despues de la hora escrita. Pero sucede que cuando le digo que solo me traiga esa hora en particular

Código SQL [-]
SELECT * FROM IEGRESOS
WHERE (cast(FECHA as date) = '09/10/2007')
and (cast(FECHA as time) = '22:08:09')

No me muestra nada, no se si luego de :09 se muestren milesimas o segundos o halgo parecido......Seguire buscando a ver si quizas dandole un formato de busqueda a la hora pueda hacer algo..... creo falta poco
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
Saber si una consulta no devuelve datos rafita SQL 4 18-09-2006 11:00:26
Consulta en Query que no devulve nada jdangosto SQL 3 01-10-2004 09:59:50
Limitar los registros que devuelve una consulta roman Conexión con bases de datos 1 03-09-2004 10:08:45
No se nada de nada... Me ayudan???? Vampire Conexión con bases de datos 12 02-06-2004 19:14:30
Timestamp y bde 5.2 Toni Firebird e Interbase 2 27-05-2003 10:26:33


La franja horaria es GMT +2. Ahora son las 12:57:14.


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