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

Consulta: En la proxima semana..

Estas en el tema de Consulta: En la proxima semana.. en el foro de Mysql en Foros del Web. Hola a todos estoy intentando hacer una consulta que me devuelva los resultados que tienen fecha de llegada en los próximos 7 días. Entonces la ...
  #1 (permalink)  
Antiguo 23/03/2012, 06:02
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 19 años, 10 meses
Puntos: 5
Consulta: En la proxima semana..

Hola a todos estoy intentando hacer una consulta que me devuelva los resultados que tienen fecha de llegada en los próximos 7 días. Entonces la tabla que guarda la fecha de llegada es booking_db y la columna es fecha de llegada que guarda en este formato DD/MM/YYYY

He hecho esto, pero no me da el resultado esperado:

SELECT * FROM bookings_db WHERE estado!='lost' AND fecha_llegada > DATE_SUB(CURDATE(),INTERVAL 7 DAY) ORDER BY numero_pedido DESC

Alguien sabe que debería cambiar para solucionar el problema? Creo que de alguna manera debería decirle el formato en cual se encuentra la fecha, pero no se como hacerlo! Espero que alguien me pueda ayudar!

Un saludo!
Desde ya muchas gracias!
__________________
Bruno Quintana
  #2 (permalink)  
Antiguo 23/03/2012, 08:15
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años
Puntos: 574
Respuesta: Consulta: En la proxima semana..

Si fecha_llegada se guarda en ese formato es que no es un campo DATE luego tendrás algun problema....

Suponiendo que si es un campo DATE (YYYY-mm-dd) luego

fecha_llegada > DATE_SUB(CURDATE(),INTERVAL 7 DAY) estos on los que han llegado o llegaran de 7 dias antes de hoy en adelante...

fecha_llegada < DATE_SUB(CURDATE(),INTERVAL 7 DAY) esto serian todo los que llegaron de 7 dias antes de hoy para atras...

DATE_SUB resta

SELECT DATE_SUB('2010-12-31 23:59:59', INTERVAL 1 DAY);
-> '2010-12-30 23:59:59'

DATE_ADD suma

SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY);
-> '2011-01-01 23:59:59'


Si tienes esas fechas en ese formato y por tanto en un string tienes la funcion
STR_TO_DATE

http://dev.mysql.com/doc/refman/5.5/...on_str-to-date
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: select, tabla
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 02:31.