Afin de me gagner du temps, j'aimerai intégrer à une base de données postgres un genre de requête préparée qui répondrait à cette requête :
select
prv_agt.num_agt,
dat_deb,
max(dat_ptj) as fin,
temps(sum(temps(temps))::int4) as fait,
temps((tps_est/(ndj_trv/2.)*(max(dat_ptj)-dat_deb+1))::int4) as prevu,
temps(sum(temps(temps))::int4 - (tps_est/(ndj_trv/2.)*(max(dat_ptj)-dat_deb+1))::int4) as diff
from
totaljournee,
prv_agt
where
totaljournee.num_agt = $1
and totaljournee.num_agt = prv_agt.num_agt
and (dat_ptj between dat_deb and dat_fin and getFinPeriode(dat_ptj) - 1 = dat_fin)
and dat_ptj <= $2
group by prv_agt.num_agt, dat_deb, tps_est, ndj_trv
order by 1;
(…)