Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #99004
    SamantaS
    Participante

      [b][color=blue][/Olá pessoal. Na query que desenvolvi, estou pegando algumas informações do funcionário e usando o COUNT para somar a quantidade de dependentes de Salário Família e de IR. Aparecendo apenas uma vez e com o numero de total de dependentes.Sendo que ao invés de somar, está aparecendo um valor de cada vez. Ou seja, se o funcionário tem 3 dependentes de ir, ele aparece 3 vezes na coluna mostrando a quantidade de dependentes por vez, ou seja,um em cada linha. Tem como alguem me ajudar nessa? Obrigada! 😀
      SELECT F.CHAPA,
      F.NOME AS NOME_FUNC,
      F.DATAADMISSAO,
      F.DATADEMISSAO,
      MAX(F.DTVENCFERIAS),
      MAX(HS.DTINICIO),
      C.DESCRICAO AS SITUACAO,
      FUN.NOME AS NOME_FUNCAO,
      G.CGC,
      PF.GRADESALARY,
      F.SALARIO,
      ((F.JORNADAMENSAL)/60) AS MENSAL,
      S.DESCRICAO,
      PF.FML,
      PF.HR,
      PF.PROVBONUS,
      PF.PROVBONUSPERC,
      PF.IHPREV,
      PF.IHP,
      PF.IHPPERCENT,
      COUNT(NVL(DEP.NOME,0)) AS IRRF,
      COUNT(DEP1.NOME) AS SAL_FAM,
      F.CODBANCOPAGTO,
      F.CODAGENCIAPAGTO,
      F.CONTAPAGAMENTO,
      PF.SUPERV,
      HR.DESCRICAO AS HORARIO,
      GC.DESCRICAO AS TURNO

      FROM PFUNC F

      LEFT JOIN PFDEPEND DEP
      ON F.CODCOLIGADA = DEP.CODCOLIGADA
      AND F.CHAPA = DEP.CHAPA
      AND DEP.INCIRRF = '1'

      LEFT JOIN PFDEPEND DEP1
      ON F.CODCOLIGADA = DEP1.CODCOLIGADA
      AND F.CHAPA = DEP1.CHAPA
      AND DEP1.INCSALFAM = '1'

      LEFT JOIN GFILIAL G
      ON F.CODCOLIGADA = G.CODCOLIGADA
      AND F.CODFILIAL = G.CODFILIAL

      LEFT JOIN PSECAO S
      ON F.CODCOLIGADA = S.CODCOLIGADA
      AND F.CODSECAO = S.CODIGO

      LEFT JOIN PFCOMPL PF
      ON F.CODCOLIGADA = PF.CODCOLIGADA
      AND F.CHAPA = PF.CHAPA

      LEFT JOIN PFUNCAO FUN
      ON F.CODFUNCAO = FUN.CODIGO
      AND F.CODCOLIGADA = FUN.CODCOLIGADA

      LEFT JOIN PCODSITUACAO C
      ON F.CODSITUACAO = C.CODCLIENTE

      LEFT JOIN PFHSTHOR HOR
      ON F.CODCOLIGADA = HOR.CODCOLIGADA
      AND F.CODHORARIO = HOR.CODHORARIO
      AND F.CHAPA = HOR.CHAPA

      LEFT JOIN AHORARIO HR
      ON F.CODCOLIGADA = HR.CODCOLIGADA
      AND F.CODHORARIO = HR.CODIGO

      LEFT JOIN PFHSTAFT HS
      ON F.CODCOLIGADA = HS.CODCOLIGADA
      AND F.CHAPA = HS.CHAPA

      LEFT JOIN GCONSIST GC
      ON F.CODCOLIGADA = GC.CODCOLIGADA
      AND PF.TURNO1 = GC.CODCLIENTE
      AND GC.CODTABELA = 'TURNO'

      WHERE F.CODCOLIGADA = '178'

      GROUP BY F.CHAPA,
      F.NOME,
      F.DATAADMISSAO,
      F.DATADEMISSAO,
      C.DESCRICAO,
      FUN.NOME,
      G.CGC,
      PF.GRADESALARY,
      F.SALARIO,
      F.JORNADAMENSAL,
      PF.FML,
      PF.HR,
      PF.PROVBONUS,
      PF.PROVBONUSPERC,
      PF.IHPREV,
      PF.IHP,
      PF.IHPPERCENT,
      F.CODBANCOPAGTO,
      F.CODAGENCIAPAGTO,
      F.CONTAPAGAMENTO,
      PF.SUPERV,
      HR.DESCRICAO,
      DEP.NOME,
      DEP1.NOME,
      S.DESCRICAO,
      GC.DESCRICAO

      ORDER BY F.NOMEcolor][/b]

      #99005
      burga
      Participante

        Você deve eliminar do retorno da consulta (cláusula SELECT) as colunas que retornam valores diferentes pras linhas que você descreveu (que deveriam estar agrupadas). Aí você também retira elas da cláusula GROUP BY e pronto…

        #99006
        SamantaS
        Participante

          [quote=”burga”:2hjxke00]Você deve eliminar do retorno da consulta (cláusula SELECT) as colunas que retornam valores diferentes pras linhas que você descreveu (que deveriam estar agrupadas). Aí você também retira elas da cláusula GROUP BY e pronto…[/quote]

          CONSEGUI!!OBRIGADA! 😆

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.