Select union compras e vendas detalhe
quero fazer um soma das quantidades de produtos comprados e vendidos para um relatório com duas colunas: entradas e saídas.
Entre outros campos, as tabelas CompraDetalhe e VendaDetalhe têm os campos Produto e Quantidade.
Como faço essa consulta para que liste na mesma linha as entradas e as saídas?
Tentei assim:
´
SELECT COMPRADETALHE.PRODUTO, SUM(COMPRADETALHE.QUANTIDADE) AS QTDE_TOTAL_COMPRADA FROM COMPRADETALHE
GROUP BY 1
UNION ALL
SELECT VENDADETALHE.PRODUTO, SUM(VENDADETALHE.QUANTIDADE) AS QTDE_TOTAL_VENDIDA FROM VENDADETALHE
GROUP BY 1
´
Mas isso não funciona, pois o QTDE_TOTAL_VENDIDA não aparece resultado.
Alguém pode me ajudar?
Obrigado
Entre outros campos, as tabelas CompraDetalhe e VendaDetalhe têm os campos Produto e Quantidade.
Como faço essa consulta para que liste na mesma linha as entradas e as saídas?
Tentei assim:
´
SELECT COMPRADETALHE.PRODUTO, SUM(COMPRADETALHE.QUANTIDADE) AS QTDE_TOTAL_COMPRADA FROM COMPRADETALHE
GROUP BY 1
UNION ALL
SELECT VENDADETALHE.PRODUTO, SUM(VENDADETALHE.QUANTIDADE) AS QTDE_TOTAL_VENDIDA FROM VENDADETALHE
GROUP BY 1
´
Mas isso não funciona, pois o QTDE_TOTAL_VENDIDA não aparece resultado.
Alguém pode me ajudar?
Obrigado
Armindo
Curtidas 0
Respostas
Emerson Nascimento
15/10/2008
tente assim:
onde está [i:a68b4a1d87]cast(0 as float)[/i:a68b4a1d87], troque o float pelo tipo do campo correspondente.
SELECT COMPRADETALHE.PRODUTO, SUM(COMPRADETALHE.QUANTIDADE) AS QTDE_TOTAL_COMPRADA, cast(0 as float) QTDE_TOTAL_VENDIDA FROM COMPRADETALHE GROUP BY 1 UNION ALL SELECT VENDADETALHE.PRODUTO, cast(0 as float) QTDE_TOTAL_COMPRADA, SUM(VENDADETALHE.QUANTIDADE) AS QTDE_TOTAL_VENDIDA FROM VENDADETALHE GROUP BY 1
onde está [i:a68b4a1d87]cast(0 as float)[/i:a68b4a1d87], troque o float pelo tipo do campo correspondente.
GOSTEI 0
Emerson Nascimento
15/10/2008
como alternativa, você pode usar subselects, assim:
SELECT PRODUTO.PRODUTO, (SELECT SUM(COMPRADETALHE.QUANTIDADE) FROM COMPRADETALHE WHERE COMPRADETALHE.PRODUTO = PRODUTO.PRODUTO) AS QTDE_TOTAL_COMPRADA, (SELECT SUM(VENDADETALHE.QUANTIDADE) FROM VENDADETALHE WHERE VENDADETALHE.PRODUTO = PRODUTO.PRODUTO) AS QTDE_TOTAL_VENDIDA FROM PRODUTO
GOSTEI 0