Autor Tema: Consultas de fechas en Oracle  (Leído 54289 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado cruper3000

  • Sv Member
  • ***
  • Mensajes: 160
Consultas de fechas en Oracle
« : octubre 07, 2008, 10:25:45 am »
Buen dia, quiero consultarles sobre una consulta en oracle, el problema esta en el filtro ya que quiero consultar un rango de fechas con hora, por ejemplo: WHERE fecha>='2008-07-07 10:11:10' and fecha<='2008-07-08 06:10:10' pero cuando coloco una sentencia asi me da error, el campo esta definido como (date). tambien algo curioso es que para hacer la consulta de un dia en concrero tengo que poner WHERE fecha='10-AGO-08' en ese formato.

De antemano gracias por su ayuda.

sicario

  • Visitante
Re: Consultas de fechas en Oracle
« Respuesta #1 : octubre 07, 2008, 10:34:58 am »
si los campos de fecha tienen TIMESTAMP entonces utiliza el truncate...

ejemplo:
where trunc(fecha)='07/10/2008'


cualquier cosa me avisas..

Desconectado cruper3000

  • Sv Member
  • ***
  • Mensajes: 160
Re: Consultas de fechas en Oracle
« Respuesta #2 : octubre 07, 2008, 10:42:09 am »
El proble es que necesito consultar por fecha y por hora

Desconectado Camus de Acuario

  • The Communiter-
  • *
  • Mensajes: 8455
  • Ōrora Ekusukyūshon!
Re: Consultas de fechas en Oracle
« Respuesta #3 : octubre 07, 2008, 10:44:41 am »
esta forma ocupo:

la fecha de ahora
to_date('20081007 10:44:22', 'YYYYMMDD HH24:MI:SS')

y me sirve tanto con >=, <= pero mejor es ocupar between

Código: [Seleccionar]
SELECT * FROM tabla WHERE fecha BETWEEN to_date('20080907 00:00:00', 'YYYYMMDD HH24:MI:SS') AND to_date('20080907 23:59:59', 'YYYYMMDD HH24:MI:SS')
alli busco todos los datos del dia 09 de octubre, desde las 0 hasta las 23:59:59
« Última Modificación: octubre 07, 2008, 10:51:24 am por Camus de Acuario »

Desconectado cruper3000

  • Sv Member
  • ***
  • Mensajes: 160
Re: Consultas de fechas en Oracle
« Respuesta #4 : octubre 07, 2008, 11:23:05 am »
esta forma ocupo:

la fecha de ahora
to_date('20081007 10:44:22', 'YYYYMMDD HH24:MI:SS')

y me sirve tanto con >=, <= pero mejor es ocupar between

Código: [Seleccionar]
SELECT * FROM tabla WHERE fecha BETWEEN to_date('20080907 00:00:00', 'YYYYMMDD HH24:MI:SS') AND to_date('20080907 23:59:59', 'YYYYMMDD HH24:MI:SS')
alli busco todos los datos del dia 09 de octubre, desde las 0 hasta las 23:59:59

Perfecto funciona de maravilla, pero hoy me enfrento a otro proble con esa consulta, ya probe en el gestor de BD de oracle y me funciona, pero al probarla desde el codigo (uso ASP 2.0) se genera el siguiente Error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

ODBC driver does not support the requested properties.

Al quitarle el filtro del WHERE fecha BETWEEN to_date('20080907 00:00:00', 'YYYYMMDD HH24:MI:SS') AND to_date('20080907 23:59:59', 'YYYYMMDD HH24:MI:SS')
deja de dar el error, pero no se como solucionarlo!!!!

Desconectado Camus de Acuario

  • The Communiter-
  • *
  • Mensajes: 8455
  • Ōrora Ekusukyūshon!
Re: Consultas de fechas en Oracle
« Respuesta #5 : octubre 07, 2008, 03:46:55 pm »
pues es problema del driver que no te reconoce la sentencia, prueba usando otro driver o una version mas actualizada o en todo caso cambia la string de conexion a la BD, en una de ellas podras hacerlo