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

Sumar cantidades según condiciones

Estas en el tema de Sumar cantidades según condiciones en el foro de Mysql en Foros del Web. Buenas!! Necesito obtener, bajo unas condiciones, las cantidades disponibles para unos determinados productos. Para ello tengo 3 tablas: 1. Pedido (p) -------------- pedido_id estado_actual 2. ...
  #1 (permalink)  
Antiguo 30/04/2015, 03:45
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 3 meses
Puntos: 11
Pregunta Sumar cantidades según condiciones

Buenas!!

Necesito obtener, bajo unas condiciones, las cantidades disponibles para unos determinados productos. Para ello tengo 3 tablas:

1. Pedido (p)
--------------
pedido_id
estado_actual

2. Transación_de_pedido (tp
--------------
pedido_id
estado
producto_id
cantidad
user_id

3. Estado_de_envio (ev)
---------------
pedido_id
estado

Necesito para todos los productos de un determinado usuario (tp.user_id =..) que me devuelva las cantidades compradas de cada producto (GROUP BY producto_id) para aquellos pedidos cuyo estado sea 1, 19, 18 o 50. PERO si el pedido es 19 o 18 se debe buscar el estado en estado de envío. Si existe aquí el envío y su estado es 19 0 18 también, añadimos la cantidad que había en esta fila de tp, en caso contrario, no. Si no existe en esta tabla (ev) también añadimos las cantidades dadas.

¿Cómo podría hacer esta consulta? ¡Gracias!
__________________
Neversyn Software e Ingeniería
  #2 (permalink)  
Antiguo 30/04/2015, 03:55
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Sumar cantidades según condiciones

Yo lo plantearía con dos partes.

En la primera realizas el where del usuario, con el group by del producto. Por otro lado haría un left join con la tabla de estado de envío donde metería las condiciones de estado.
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 30/04/2015, 04:13
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: Sumar cantidades según condiciones

Gracias por tu rápida respuesta Malenko. Lo único que no estoy seguro de que me valga, porque necesito ambos "positivos" es decir, tanto si en la tabla de pedidos su estado es 19 o 18 y no existe en estado_de_envio, como si existe y su estado es también 19 o 18. ¿Esto entraría en ese planteamiento? ¿Cómo?

Gracias de nuevo!!
__________________
Neversyn Software e Ingeniería
  #4 (permalink)  
Antiguo 30/04/2015, 04:21
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Sumar cantidades según condiciones

Tendría porque el filtro de estado lo estarías haciendo en el left join. Te lo estoy diciendo de memoria porque ahora mismo me es imposible probarlo, pero tengo una consulta parecida y si que funciona de esta manera.
__________________
Aviso: No se resuelven dudas por MP!
  #5 (permalink)  
Antiguo 30/04/2015, 04:48
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: Sumar cantidades según condiciones

Gracias por tu respuesta Malenko. Aún así no consigo lo que esperaba. No sé si la consulta que realizo es incorrecta o qué, pero me da que voy a acabar haciendo las consultas por separado :(

¡Muchas gracias de todas formas!
__________________
Neversyn Software e Ingeniería
  #6 (permalink)  
Antiguo 30/04/2015, 05:08
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Sumar cantidades según condiciones

Porque no pones la que tienes para revisarla?
__________________
Aviso: No se resuelven dudas por MP!
  #7 (permalink)  
Antiguo 30/04/2015, 06:01
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, 5 meses
Puntos: 2658
Respuesta: Sumar cantidades según condiciones

Cita:
Iniciado por zeuslife Ver Mensaje
Gracias por tu respuesta Malenko. Aún así no consigo lo que esperaba. No sé si la consulta que realizo es incorrecta o qué, pero me da que voy a acabar haciendo las consultas por separado :(

¡Muchas gracias de todas formas!
Ok. ¿Qué consulta?

S ino pones la query no podemos adivinar si está bien o mal. Una descripción de lo que haces no sirve.

Postea la query.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: condicionales, query
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 21:10.