Fórum Consulta com Union - trazer dados agrupados de duas tabelas #324396
28/06/2006
0
Estou fazendo um relatório sintetizado dos lançamentos do livro caixa e dos movimentos bancários. As tabelas são parecidas. A diferença é que no caixa a operação é gravada como ´S´ e ´E´ e nos lctos bancários é ´D´ e ´C´.
A consulta abaixo me traz a soma dos lançamentos dos históricos, mas traz em duas linhas - uma para o cx e outra para banco.
Como posso fazer uma consulta que traga tudo junto. Todos os lanaçmentos agrupados por histórico, independente se o lcto foi no cx ou no banco?
obrigado
SELECT CAIXALANC.HISTORICO,
CAST(SUM(CASE CAIXALANC.OPERACAO WHEN ´S´ THEN
CAIXALANC.VALOR END)AS FLOAT)AS SUBTOTALDEBITO,
CAST(SUM(CASE CAIXALANC.OPERACAO WHEN ´E´ THEN
CAIXALANC.VALOR END)AS FLOAT) AS SUBTOTALCREDITO,
HISTORICOS.DESCRICAO AS DESCRHISTORICO FROM CAIXALANC
INNER JOIN HISTORICOS ON HISTORICOS.CODIGO = CAIXALANC.HISTORICO
WHERE CAIXALANC.DATA BETWEEN :VInicio AND :VFim
GROUP BY CAIXALANC.HISTORICO, HISTORICOS.DESCRICAO
UNION ALL
SELECT
MOVIBANCOS.HISTORICO,
CAST(SUM(CASE MOVIBANCOS.OPERACAO WHEN ´D´ THEN
MOVIBANCOS.VALOR END)AS FLOAT)AS SUBTOTALDEBITO,
CAST(SUM(CASE MOVIBANCOS.OPERACAO WHEN ´C´ THEN
MOVIBANCOS.VALOR END)AS FLOAT) AS SUBTOTALCREDITO,
HISTORICOS.DESCRICAO AS DESCRHISTORICO FROM MOVIBANCOS
INNER JOIN HISTORICOS ON HISTORICOS.CODIGO = MOVIBANCOS.HISTORICO
WHERE MOVIBANCOS.DATA BETWEEN :VInicio AND :VFim
GROUP BY MOVIBANCOS.HISTORICO, HISTORICOS.DESCRICAO
A consulta abaixo me traz a soma dos lançamentos dos históricos, mas traz em duas linhas - uma para o cx e outra para banco.
Como posso fazer uma consulta que traga tudo junto. Todos os lanaçmentos agrupados por histórico, independente se o lcto foi no cx ou no banco?
obrigado
SELECT CAIXALANC.HISTORICO,
CAST(SUM(CASE CAIXALANC.OPERACAO WHEN ´S´ THEN
CAIXALANC.VALOR END)AS FLOAT)AS SUBTOTALDEBITO,
CAST(SUM(CASE CAIXALANC.OPERACAO WHEN ´E´ THEN
CAIXALANC.VALOR END)AS FLOAT) AS SUBTOTALCREDITO,
HISTORICOS.DESCRICAO AS DESCRHISTORICO FROM CAIXALANC
INNER JOIN HISTORICOS ON HISTORICOS.CODIGO = CAIXALANC.HISTORICO
WHERE CAIXALANC.DATA BETWEEN :VInicio AND :VFim
GROUP BY CAIXALANC.HISTORICO, HISTORICOS.DESCRICAO
UNION ALL
SELECT
MOVIBANCOS.HISTORICO,
CAST(SUM(CASE MOVIBANCOS.OPERACAO WHEN ´D´ THEN
MOVIBANCOS.VALOR END)AS FLOAT)AS SUBTOTALDEBITO,
CAST(SUM(CASE MOVIBANCOS.OPERACAO WHEN ´C´ THEN
MOVIBANCOS.VALOR END)AS FLOAT) AS SUBTOTALCREDITO,
HISTORICOS.DESCRICAO AS DESCRHISTORICO FROM MOVIBANCOS
INNER JOIN HISTORICOS ON HISTORICOS.CODIGO = MOVIBANCOS.HISTORICO
WHERE MOVIBANCOS.DATA BETWEEN :VInicio AND :VFim
GROUP BY MOVIBANCOS.HISTORICO, HISTORICOS.DESCRICAO
Valdirdill
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)