soma e sub-soma dentro do select

29/06/2010

0

Pessoal preciso somar dentro de uma SP no Oracle.

 1 - passo é fazer o select em duas tabelas, sendo que uma eu pego o valor da bolsa auxilio e do vale-transporte
      do transporte do estagiário, como no código abaixo:

 code
    
       SELECT FP.ID_FOLHA_PONTO, 
              CE.NR_CONTRATO, CE.NR_ANO_CONTRATO,
              FP.NR_MESANO_REFERENCIA,
         LPAD(TO_CHAR(ES.ID_MATRICULA), 8, '0') ID_MATRICULA, ES.TX_NOME,
         SUBSTR(TO_CHAR(ES.NR_CPF), 1, 3)||'.'||
         SUBSTR(TO_CHAR(ES.NR_CPF), 4, 3)||'.'||
         SUBSTR(TO_CHAR(ES.NR_CPF), 7, 3)||'-'||
         SUBSTR(TO_CHAR(ES.NR_CPF), 10, 2) NR_CPF,
   
    FPG.VL_TOTAL_FOLHA,   
    CE.NR_CODIGO_CIEE, CE.DT_INICIO_ESTAGIO, CE.DT_FIM_ESTAGIO,
    ( SELECT  TB1.VL_BOLSA_ENSINO_MEDIO
      FROM TB_GERENCIAL TB1
      WHERE TB1.BL_ATIVO = 1
      AND ROWNUM < 2  --Recuperar apenas o último cadastrado
        ) AS BOLSA,
    ( SELECT TB1.VL_AUX_TRANSP_DIA
      FROM TB_GERENCIAL TB1
      WHERE TB1.BL_ATIVO = 1
      AND ROWNUM < 2  --Recuperar apenas o último cadastrado
         ) AS VALE_TRANSPORTE  
                   
  FROM  TB_CONTRATO_ESTAGIO  CE   
     INNER JOIN  TB_SOLICITACAO_ESTAGIARIO SE ON    
           SE.ID_SOLICITACAO = CE.ID_SOLICITACAO    
     INNER JOIN  TB_ESTAGIARIO ES ON    
           ES.ID_MATRICULA = CE.ID_MATRICULA    
     LEFT JOIN  TB_FOLHA_PONTO FP ON    
           FP.NR_CONTRATO = CE.NR_CONTRATO AND     
           FP.NR_ANO_CONTRATO = CE.NR_ANO_CONTRATO AND     
           FP.NR_MESANO_REFERENCIA = '06/2010'     
    
     LEFT JOIN  TB_DETALHE_FOLHA_PAGTO DFP ON    
          DFP.NR_CONTRATO = CE.NR_CONTRATO AND     
          DFP.NR_ANO_CONTRATO = CE.NR_ANO_CONTRATO
     LEFT JOIN  TB_FOLHA_PAGAMENTO FPG ON    
          FPG.ID_FOLHA_PAGTO = DFP.ID_FOLHA_PAGTO AND   
          FPG.NR_MESANO_REFERENCIA = FP.NR_MESANO_REFERENCIA      
     WHERE SE.NR_NIVEL = 1

\code

 com o total de estágiários da tabela "TB_CONTRATO_ESTAGIO" tenho que somar o valor da bolsa e o valor do vale transporte x o valor da quantidade de dias trabalhados. 
Sergio Tavares

Sergio Tavares

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar