- Este tópico contém 2 respostas, 2 vozes e foi atualizado pela última vez 14 anos, 10 meses atrás por
SamantaS.
-
AutorPosts
-
29 de abril de 2011 às 5:00 pm #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 TURNOFROM 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.CODFILIALLEFT JOIN PSECAO S
ON F.CODCOLIGADA = S.CODCOLIGADA
AND F.CODSECAO = S.CODIGOLEFT JOIN PFCOMPL PF
ON F.CODCOLIGADA = PF.CODCOLIGADA
AND F.CHAPA = PF.CHAPALEFT JOIN PFUNCAO FUN
ON F.CODFUNCAO = FUN.CODIGO
AND F.CODCOLIGADA = FUN.CODCOLIGADALEFT JOIN PCODSITUACAO C
ON F.CODSITUACAO = C.CODCLIENTELEFT JOIN PFHSTHOR HOR
ON F.CODCOLIGADA = HOR.CODCOLIGADA
AND F.CODHORARIO = HOR.CODHORARIO
AND F.CHAPA = HOR.CHAPALEFT JOIN AHORARIO HR
ON F.CODCOLIGADA = HR.CODCOLIGADA
AND F.CODHORARIO = HR.CODIGOLEFT JOIN PFHSTAFT HS
ON F.CODCOLIGADA = HS.CODCOLIGADA
AND F.CHAPA = HS.CHAPALEFT 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.DESCRICAOORDER BY F.NOMEcolor][/b]
29 de abril de 2011 às 5:14 pm #99005burga
ParticipanteVocê 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…
29 de abril de 2011 às 5:26 pm #99006SamantaS
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! 😆
-
AutorPosts
- Você deve fazer login para responder a este tópico.