Pular para o conteúdo

Fóruns SQL e PL/SQL [Dúvida] UNION [Dúvida] UNION

#92945
VINI85
Participante

    [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===============