› Fóruns › SQL e PL/SQL › [Dúvida] UNION › [Dúvida] UNION
[quote=”ithigvo”:3gt7p4be]Bom dia Vini,
não sei se consegui entender ao certo o que precisa, mas veja se seria mais ou menos isto:
select
func.codfunc,
sum(prov.valor) as proventos,
sum(des.valor) as descontos
from
tfinanc func, --pode ser trocado pela sua tabela de usuários
tfinanc prov,
tfinanc des
where func.codfunc = prov.codfunc
and func.codfunc = des.codfunc
and prov.provdesc = 'P'
and des.provdesc = 'D'
group by func.codfunc
Obs.: onde está “tfinanc func” vc pode colocar a tabela de usuários, dai coloca o nome dele ao invés do código.[/quote]
ESSE É O MEU SELECT, OS DESCONTOS ESTÃO SAINDO NA MESMA COLUNA DE PROVENTOS E PRECISO QUE SAIAM AO LADO..
SELECT
A.CHAPA
,A.NOME
,C.CODEVENTO
,D.DESCRICAO
,C.VALOR
FROM PFUNC A
JOIN PFPERFF B
ON A.CODCOLIGADA = B.CODCOLIGADA
AND A.CHAPA = B.CHAPA
JOIN PFFINANC C
ON A.CODCOLIGADA = C.CODCOLIGADA
AND A.CHAPA = C.CHAPA
AND B.NROPERIODO = C.NROPERIODO
AND B.MESCOMP = C.MESCOMP
AND B.ANOCOMP = C.ANOCOMP
JOIN PEVENTO D
ON C.CODCOLIGADA = D.CODCOLIGADA
AND C.CODEVENTO = D.CODIGO
WHERE A.CODCOLIGADA = ‘1455’
AND A.CODSITUACAO ‘D’
AND B.NROPERIODO = ‘2’
AND B.MESCOMP = ’02’
AND B.ANOCOMP = ‘2010’
AND D.PROVDESCBASE = ‘P’
===========BLOCO DOS PROVENTOS===============
UNION
SELECT
NULL
,NULL
,C.CODEVENTO
,D.DESCRICAO
,C.VALOR
FROM PFUNC A
JOIN PFPERFF B
ON A.CODCOLIGADA = B.CODCOLIGADA
AND A.CHAPA = B.CHAPA
JOIN PFFINANC C
ON A.CODCOLIGADA = C.CODCOLIGADA
AND A.CHAPA = C.CHAPA
AND B.NROPERIODO = C.NROPERIODO
AND B.MESCOMP = C.MESCOMP
AND B.ANOCOMP = C.ANOCOMP
JOIN PEVENTO D
ON C.CODCOLIGADA = D.CODCOLIGADA
AND C.CODEVENTO = D.CODIGO
WHERE A.CODCOLIGADA = ‘1455’
AND A.CODSITUACAO ‘D’
AND B.NROPERIODO = ‘2’
AND B.MESCOMP = ’02’
AND B.ANOCOMP = ‘2010’
AND D.PROVDESCBASE = ‘D’
===========BLOCO DOS DESCONTOS===============