Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

problema al hacer query con fechas

Estas en el tema de problema al hacer query con fechas en el foro de Mysql en Foros del Web. Hola tengo la siguiente duda al momento de realizar este query Código HTML: select * from actividad where fechaCompromiso between 'valor' and 'valor'; Me tiene ...
  #1 (permalink)  
Antiguo 03/09/2012, 17:32
 
Fecha de Ingreso: agosto-2011
Ubicación: d.f
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 4
problema al hacer query con fechas

Hola tengo la siguiente duda al momento de realizar este query

Código HTML:
select * from actividad where  fechaCompromiso between 'valor' and 'valor';
Me tiene que entregar las consultas que halla entre ese intervalo de fechas, mi pregunta es cuando yo realizo un query con este intervalo de fechas me entrega resultado.

Código HTML:
select * from actividad where  fechaCompromiso between '20-08-2012' and '23-09-2012';
Me entrega resultados y eso esta bien pero si hago el query de esta manera

Código HTML:
select * from actividad where  fechaCompromiso between '20-08-2012' and '03-09-2012';
No me entrega resultados y tengo resultados con ese intervalo de fechas!!!!

CUAL ES EL PROBLEMAAAAAAAAAAAAAAA!!!!

Gracias de antemano
  #2 (permalink)  
Antiguo 03/09/2012, 19:46
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema al hacer query con fechas

No estás respetando el formato estándar de fechas (YYYY-MM-DD)
Si fechaCompromiso es DATE, sería:
Código MySQL:
Ver original
  1. FROM actividad
  2. WHERE fechaCompromiso BETWEEN  '2012-08-20' AND '2012-09-03';
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 03/09/2012, 21:09
 
Fecha de Ingreso: agosto-2011
Ubicación: d.f
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 4
Respuesta: problema al hacer query con fechas

Estoy en desacuerdo contigo gnzsoloyo ya que el formato que he metido los datos en la base de datos es (DD-MM-YYYY) con una funcion java cambio el formato.
  #4 (permalink)  
Antiguo 04/09/2012, 03:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema al hacer query con fechas

Podrás estar en desacuerdo tantas veces como quieras, pero si la columna es un DATE el formato es "YYYY-MM-DD".
Ahora bien, si estás almacenando la fecha en un VARCHAR, entonces has metido la pata a lo grande y no te funcionará la busqueda de fechas por rangos...

Tan sencillo como eso.

Por favor, ve al manual de referencia y lee bien el tema de los formatos usados en Bases de Datos, en especial los que maneja MySQL.



Un ultimo detalle: Que en un lenguaje uses un formato dado es irrelevante para MySQL, porque el conector usado para ejecutar las consultas puede estr convirtiendo el DATE creado al formato correcto en la base, por lo que en los INSERT con un conector no notarías la diferencia. Pero a la hora de crear la consulta como una cadena de texto debes respetar el formato estándar usado por MySQL (y que reconocen todos los DBMS), porque de lo contrario los resultados serán erráticos o incorrectos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 04/09/2012 a las 04:26
  #5 (permalink)  
Antiguo 04/09/2012, 08:58
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: problema al hacer query con fechas

Tiene razon gnzsoloyo, lo más seguro es que si has podido meter los datos en el campo fecha con ese formato sea un campo varchar.
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D

Etiquetas: query, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:07.