Sumar 2 campos de tablas diferentes para compararlos SQL
Este es un query un poco complejo, se necesita sumar 2 campos de 2 tablas diferentes y que se muestre la sumatoria por cada linea. En la tabla1 existe un campo cantidad que es el resumen o sumatoria de la cantidad que hay en la tabla2.
tabla1
tabla2
tabla1
codigo | nombre | cantidad |
001 | prod1 | 10 |
002 | prod2 | 9 |
NNN | prodn | 25 |
tabla2
codigo | nombre | bodega | cantidad |
001 | prod1 | 01 | 10 |
002 | prod2 | 01 | 5 |
002 | prod2 | 02 | 4 |
NNN | prodn | 01 | 20 |
NNN | prodn | 05 | 6 |
El resultado que queremos es el siguiente:
codigo | nombre | canttabla1 | canttabla2 |
001 | prod1 | 10 | 10 |
002 | prod2 | 9 | 9 |
NNN | prodn | 25 | 26 |
Necesitamos un query que nos permita conocer que el producto NNN tiene
diferencia en la tabla1 contra el detalle de la tabla2. Este es el Query:
SELECT a.Codigo, a.nombre, a.cantidad as canttabla1, b.Cantidad as canttabla2 FROM TABLA1 a INNER JOIN
(SELECT Codigo, SUM (Cantidad) AS Cantidad FROM TABLA2 GROUP BY Codigo) b ON
a.Codigo = b.Codigo
Con este query podemos tener una base para generar nuevos query donde estemos consultando totales entre cabecera / detalle, como por ejemplo, el total de una factura registrado en su cabecera contra el total de la sumatoria de los productos de dicha factura.
Comentarios