Hola gente
parametros (id prodcutos y fecha)
intento obtener si un o varios productos estan dentro del rango con los eventos que esten relacionados esos productos... si cada producto esta dentro del rango de su evento esta dentro del rango... todo ok
si en unos de esos productos uno no se encuentra dentro del rango de su evento relacionando de acuerdo a la fecha dada
entonces esta mal ...
ej.
prodcut
id , name
10 producto01
11 producto02
evento_product
product_id event_id
10 1
11 2
evento
id, nombre, fecha_inicio, fecha_final
1 verano 2014-02-20 2014-02-31
2 invierno 2014-03-20 2014-03-31
---- entonces en un array envio los id de los productos(10,11) con la fecha 2014-02-25
---- en ese caso me votaria error por que el id 11 su evento relacionado no se encuentra 2014-02-25 entre las fechas de su evento relacionado....
thanks all!!
entre Desarrolladores
Recibe ayuda de expertos
Registrate y pregunta
Es gratis y fácil
Recibe respuestas
Respuestas, votos y comentarios
Vota y selecciona respuestas
Recibe puntos, vota y da la solución
Pregunta
consulta, subconsulta ,mysql, alguna idea
- preguntó
- Web
- 830 Vistas
- 1 Respuestas
- solucionada
1 Respuesta
En primer lugar decirte que la pregunta está expuesta de forma bastante poco clara. El enunciado de la pregunta no contiene ninguna pregunta y la explicación del contenido es bastante liosa. Intenta ser más conciso y utilizar un poco mejor los signos de puntuación.
Creo que deberías sacar una lista de productos activos para una fecha de la siguiente manera:
SELECT ep.productid
FROM eventoproduct as ep
JOIN evento as e ON e.id = ep.eventid
WHERE e.fecha_inicio <= '2014-02-25 00:00:00'
AND e.fecha_final >= '2014-02-25 23:59:59'
Con esa consulta puedes sacar una lista de productos que tienen eventos activos y a partir de ahí realizar tus comprobaciones a nivel del código de la aplicación.
Si en la misma consulta ya quieres incluir los productos seleccionados y quieres evitarte una comparación desde el código puedes hacer:
SELECT id FROM product WHERE
id IN (10, 11)
AND id NOT IN (SELECT ep.productid
FROM eventoproduct as ep
JOIN evento as e ON e.id = ep.eventid
WHERE e.fecha_inicio <= '2014-02-25 00:00:00'
AND e.fecha_final >= '2014-02-25 23:59:59' )
La consulta anterior te devolverá una lista de los productos seleccionados que no cumplen la condición de tener un evento activo. Si la lista está vacía significa todos los productos seleccionados los cumplen.
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para responder a esta pregunta.
En el blog
-
- 689662
- 1
- Jul 5, 2015
Sin Respuesta
-
- 86
- 0
- Oct 18
-
- 167
- 0
- Jul 9
-
- 540
- 1
- Mar 19
-
- 414
- 2
- Feb 26
-
- 4773
- 0
- Nov 7, 2023
-
- 481
- 0
- Sep 19, 2023
-
- 465
- 0
- Ago 21, 2023
-
- 637
- 0
- May 14, 2023
- ver todas
Actividad Reciente
alyvrs preguntó Oct 19
Ayuda , necesito mostrar datos creados solo por el…ManHol preguntó Jul 9
pasar un archivo de excel a csv en pythonArtEze respondió Abr 24
Alguien sabe, no me ignorenArtEze seleccionó una respuesta Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze preguntó Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió Abr 24
No me deja instalar OracleArtEze respondió Abr 24
Formulario que guarde los datos de un jsonArtEze comentó Abr 24
Script /boot/ scrapingSantiago2610 comentó Mar 23
Acualizar ChoiceField en django
Ultimas Preguntas
Usuarios Top
- Leonardo-Tadei
- 227320 Puntos
- Peter
- 150480 Puntos
- white
- 75880 Puntos
- carlossevi
- 63580 Puntos
- magarzon
- 30650 Puntos
- pregunton
- 20400 Puntos