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

Duda sobre una consola

Estas en el tema de Duda sobre una consola en el foro de Bases de Datos General en Foros del Web. Saludos a ver si alguien me puede echar un cable. Tengo un problema con una consulta a la base de datos que no me termina ...
  #1 (permalink)  
Antiguo 01/05/2008, 05:44
 
Fecha de Ingreso: diciembre-2006
Mensajes: 12
Antigüedad: 17 años, 4 meses
Puntos: 0
Duda sobre una consola

Saludos a ver si alguien me puede echar un cable.

Tengo un problema con una consulta a la base de datos que no me termina de salir como yo quiero.

Para una agenda quiero sacar los eventos que yo haya señalado como activos. Estos eventos tienen fecha de inicio y de fin.

Pues bien, quiero mostrar los eventos que esten activos cuya fecha sea cercana a la fecha de inicio y a la fecha de finalización.

La consulta que hago es esta:

SELECT *
FROM eventos
WHERE destacado = 1
AND fecha_inicio BETWEEN '$hoy' and '$final'
OR fecha_final BETWEEN '$hoy' and '$final'

Pero me devuelve eventos que no estan destacados. Que hago mal??
  #2 (permalink)  
Antiguo 01/05/2008, 06:12
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Re: Duda sobre una consola

Cita:
Iniciado por dalphy Ver Mensaje
SELECT *
FROM eventos
WHERE destacado = 1
AND fecha_inicio BETWEEN '$hoy' and '$final'
OR fecha_final BETWEEN '$hoy' and '$final'

Pero me devuelve eventos que no estan destacados. Que hago mal??
no poner paréntesis para que la prioridad entre operadores AND, OR quede clara. Para resolver el problema usa los paréntesis

SELECT *
FROM eventos
WHERE destacado = 1
AND (fecha_inicio BETWEEN '$hoy' and '$final'
OR fecha_final BETWEEN '$hoy' and '$final')

Ahora cumplirá las dos condiciones; del otro modo, entendía que debía cumplir la la condición destacado = 1 y la de la fecha de inicio, o bien lo que dice el OR, sólo lo referido a la fecha final. Y te salían registros destacados que cumplían la condición de fecha de inicio, y también te salían no destacados que cumplían con la condición de fecha final...

Última edición por jurena; 01/05/2008 a las 10:15
  #3 (permalink)  
Antiguo 01/05/2008, 06:45
 
Fecha de Ingreso: diciembre-2006
Mensajes: 12
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: Duda sobre una consola

Gracias por la respuesta, ahora funciona perfectamente!!
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 14:39.