Select em que o resultado do sum e do group by seja alocado em outra coluna
15/05/2018
0
Select numcad as Matricula, sum(valeve) as Ferias, tclrcs as Tipo_Ferias from r042rcv where numcad = 94063 and tclrcs IN (75,76) and codeve <> 197 group by tclrcs,numcad
resultado do select
Matricula Ferias Tipo_Ferias
94063 1250.71 75
94063 610.70 76
Obs.: O tipo_ferias acabei colocando para demonstrar no select mas não precisa e nome da coluna
deixei como ferias porque nao consegui montar o select para demonstrar Ferias_Vencidas e Ferias Proporcional
Como gostaria que ficasse em uma coluna separada e que não repetisse a matricula do colaborador.
Matricula Ferias_Vencidas Ferias_Proporcional
94063 1.250,71 610.70
Matheus Cordeiro
Curtir tópico
+ 0
Responder
Post mais votado
16/05/2018
algo assim:
Select numcad as Matricula, sum(case when tclrcs = 75 then valeve else 0 end) as Ferias_Vencidas, sum(case when tclrcs = 76 then valeve else 0 end) as Ferias_Proporcionais from r042rcv where numcad = 94063 and tclrcs IN (75,76) and codeve <> 197 group by numcad
Emerson Nascimento
Responder
Mais Posts
16/05/2018
Matheus Cordeiro
Ficou assim, apenas notei que quando o valor das férias integral for 0 ele está preenchendo com o valor da férias integral.
select
xCadRes.numcad as Cadastro,
xCadFun.nomfun as Nome,
xCadFun.datadm as Admissão,
xCadRes.DatDem as Demissão,
xCadRes.caudem as Causa,
sum(case when tclrcs = 75 then valeve else 0 end) as Ferias_Integral,
xCodCar.titred as Cargo,
sum(case when tclrcs = 76 then valeve else 0 end) as Férias_Prop,
sum(case when tclrcs = 71 then valeve else 0 end) as Décimo_Prop,
xCadRes.salfav as Salario,
xCadRes.datpag as Pagamento,
sum(case when tclrcs = 89 then valeve else 0 end) as Líquido
from r042rcv xEveRes,
r042rcm xCadRes,
r034fun xCadFun,
r024car xCodCar
where xCadRes.datdem >= '01-03-2018'
and xEveRes.tclrcs IN (71,75,76,89)
and xEveRes.codeve <> 197
and xEveRes.numemp = xCadFun.numemp
and xEveRes.tipcol = xCadFun.tipcol
and xEveRes.numcad = xCadFun.numcad
and xEveRes.numemp = xCadRes.numemp
and xEveRes.tipcol = xCadRes.tipcol
and xEveRes.numcad = xCadRes.numcad
and xCadFun.codcar = xCodCar.codcar
group by xCadRes.numcad,xCodCar.titred,
xCadFun.nomfun,xCadFun.datadm,
xCadRes.datdem,xCadFun.codcar,
xCadRes.salfav,xCadRes.datpag,
xCadRes.caudem
order by xCadFun.nomfun
select
xCadRes.numcad as Cadastro,
xCadFun.nomfun as Nome,
xCadFun.datadm as Admissão,
xCadRes.DatDem as Demissão,
xCadRes.caudem as Causa,
sum(case when tclrcs = 75 then valeve else 0 end) as Ferias_Integral,
xCodCar.titred as Cargo,
sum(case when tclrcs = 76 then valeve else 0 end) as Férias_Prop,
sum(case when tclrcs = 71 then valeve else 0 end) as Décimo_Prop,
xCadRes.salfav as Salario,
xCadRes.datpag as Pagamento,
sum(case when tclrcs = 89 then valeve else 0 end) as Líquido
from r042rcv xEveRes,
r042rcm xCadRes,
r034fun xCadFun,
r024car xCodCar
where xCadRes.datdem >= '01-03-2018'
and xEveRes.tclrcs IN (71,75,76,89)
and xEveRes.codeve <> 197
and xEveRes.numemp = xCadFun.numemp
and xEveRes.tipcol = xCadFun.tipcol
and xEveRes.numcad = xCadFun.numcad
and xEveRes.numemp = xCadRes.numemp
and xEveRes.tipcol = xCadRes.tipcol
and xEveRes.numcad = xCadRes.numcad
and xCadFun.codcar = xCodCar.codcar
group by xCadRes.numcad,xCodCar.titred,
xCadFun.nomfun,xCadFun.datadm,
xCadRes.datdem,xCadFun.codcar,
xCadRes.salfav,xCadRes.datpag,
xCadRes.caudem
order by xCadFun.nomfun
Responder
Clique aqui para fazer login e interagir na Comunidade :)