1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| select
idm.identif,
idm.cat_bud,
idm.c_grade,
idm.mm_indem,
sum(case idm.an_indem when 2007 then idm.mt_indem else 0 end) as mt_indem_2007,
sum(case idm.an_indem when 2008 then idm.mt_indem else 0 end) as mt_indem_2008
from
indemnite idm
inner join personnel per
on per.identif = idm.identif
and per.mois = idm.mm_indem
and per.annee = idm.an_indem
where
per.c_posit = 10
and idm.c_territ = 0
and idm.c_indem between 100 and 410
and idm.mm_indem = 12
and idm.an_indem in (2007,2008)
group by
idm.identif,
idm.cat_bud,
idm.c_grade,
idm.mm_indem
having
count(distinct idm.an_indem) = 2
order by
idm.identif asc,
idm.cat_bud asc,
idm.c_grade asc,
idm.mm_indem asc |
Partager