Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/05/2014, 14:51
marck9106
 
Fecha de Ingreso: abril-2014
Ubicación: Bogota
Mensajes: 14
Antigüedad: 10 años
Puntos: 0
Union de dos consultas o restar dos tablas

Buenas tardes a todos,

tengo un problema con una consulta, lo que pasa es que me pidieron averiguar todos los items vendidos en un periodo de tiempo ya logre hacerlos con la siguiente consulta:

Código SQL:
Ver original
  1. SELECT V.ItemCode AS CODIGO_ITEM, V.Dscription, SUM(V.Quantity)AS TOTAL_VENDIDOS, S.whsname AS BODEGA,W.OnHand AS EN_STOCK
  2. FROM INV1 V
  3. INNER JOIN OITW W ON V.ItemCode=W.ItemCode
  4. INNER JOIN OITM M ON V.ItemCode=M.ItemCode
  5. INNER JOIN OITB B ON M.ItmsGrpCod=B.ItmsGrpCod
  6. INNER JOIN OWHS S ON W.WhsCode=S.WhsCode
  7. WHERE V.DocDate BETWEEN '20130101' AND '20140430' AND W.WhsCode = 02
  8. GROUP BY V.ItemCode, S.whsname, W.OnHand, V.Dscription
  9. ORDER BY V.ItemCode

esto me arroja un total de 7094 items vendidos en cierto tiempo y ps obvio la cantidad vendida por cada item, hasta ahi todo estaba bien ahora me dicen que debo restarle los items que esten en la tabla de notas credito es decir que el total debe ser los items que se han vendido menos los items que se han devuelto, lo que hice fue hacer una consulta para que me muestre los items y las cantidades que se han devuelto en el mismo tiempo que la consulta anterioir asi:

Código SQL:
Ver original
  1. SELECT DISTINCT ItemCode, SUM(Quantity) AS CANTIDAD_DEVUELTA, WhsCode AS bodega
  2. FROM RIN1
  3. WHERE DocDate BETWEEN '20130101' AND '20140430' AND WhsCode=02
  4. GROUP BY ItemCode, WhsCode
  5. ORDER BY ItemCode

esto me muestra que se devolvieron 2320 items en la fecha del 20130101 al 20140430

por ejemplo en la primera consulta me muestra que del item L1-001 NOVEX se vendieron un total de 148 y en la consulta N 2 de notas credito me dice que en ese mismo periodo se devolvieron 2 unidades del item L1-001 NOVEX es decir que en la consulta final me debe mostrar un total de vendidos del item L1-001 NOVEX de 146 intente hacer una union pero ps creo que por los group by y por que la cantidad de datos en cada consulta son diferentes no me dejo, que pena alargar tanto el tema pero ps quería que lo entendieran bn para que me puedan ayudar.

Cualquier dudan que tengan pregunten me y con gusto les contesto.

Mil gracias y espero puedan ayudarme.

Última edición por gnzsoloyo; 05/05/2014 a las 15:02