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 Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-11-2004
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 21
sur-se Va por buen camino
Buscar con campos DATE

Hola. Tengo una tabla en Firebird v1.5 que posee un campo fecha que almacena la fecha y la hora.
El problema es que quiero hacer una consulta SQL para obtener todos los registros de una fecha concreta independientemente de la hora, pero no devuelve nada.
Código:
select * from mensajes where fecha = "11/25/04"
donde el campo fecha almacena fecha y hora.
He probado con:
Código:
select * from mensajes where CAST(fecha as DATE) = "11/25/04"
pero tampoco funciona. No devuelve los registros de ese día.
¿Como puedo hacer para que me compare sólo la fecha con independencia de la hora almacenada en el mismo campo?
Salu2.
Responder Con Cita
  #2  
Antiguo 26-11-2004
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 21
sur-se Va por buen camino
Solucionado

Nada. Ya encontré el problema. Es que tengo la base de datos con el dialecto 1 y por eso no funciona ya que no existe el DATE. Quizás debería cambiarme al dialecto 3. ¿Alguien sabe que problemas podría darme cambiar el dialecto de la base de datos al 3?
Gracias.
Responder Con Cita
  #3  
Antiguo 26-11-2004
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 21
fredo Va por buen camino
yo tambien la tengo en dialecto 1

provaste con

select * from mensajes where fecha = '11/25/04'
...
__________________
^_^

http://stna.cl
Responder Con Cita
  #4  
Antiguo 29-11-2004
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 21
sur-se Va por buen camino
Si, eso funciona siempre que la hora no haya sido almacenada, es decir, si defino el campo de tipo fecha y cuando guardo el dato en el campo no especifico la hora, entonces lo que comentas funciona perfectamente. El problema está cuando se especifica fecha y hora y se almacenan ambos datos en el mismo campo. Entonces ya no funciona. De todas formas, como sólo me ocurre en una tabla concreta para una cosa particular poco importante, puedo hacer la comparación extrayendo del campo fecha el mes el día y el año de forma independiente y comparándola con la fecha a buscar. Lo he probado y así funciona bien.
Salu2.
Responder Con Cita
  #5  
Antiguo 29-11-2004
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 21
fredo Va por buen camino
y con :

select * from mensajes where fecha between '11/25/04 00:00:00' to '11/25/04 23:59:59'
__________________
^_^

http://stna.cl
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 11:08:31.


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