explain.depesz.com

PostgreSQL's explain analyze made readable

Result: hRWb

Settings
# exclusive inclusive rows x rows loops node
1. 17.842 1,568,353.537 ↓ 10,609.0 10,609 1

GroupAggregate (cost=8,453,657.51..8,453,660.11 rows=1 width=867) (actual time=1,568,335.139..1,568,353.537 rows=10,609 loops=1)

  • Output: soc.soc_id, soc.desc_courte, tranches.no_tranches, prod.desc_courte, sum(tranches_gen.capital_restant_du), sum(tranches_gen.mnt_nominal), tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))), pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.localite, ((SubPlan 1)), sum(pret_estimation.valeur_venale_corrigee), sum(pret_garanties.mnt), fam_prod.desc_courte, sum(ecritures.solde), prod.pro_id, sum(ecritures.mnt_nominal), pret_garanties.pret_garantie_id, pret_garanties.dte_liberation, ((pret_gages.flag_principal)::integer), pret_gages.dte_liberation, ((pret_gages.flag_prendre_est)::integer)
  • Group Key: soc.soc_id, tranches.no_tranches, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))), pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.localite, ((SubPlan 1)), fam_prod.desc_courte, prod.pro_id, pret_garanties.pret_garantie_id, ((pret_gages.flag_principal)::integer), pret_gages.dte_liberation, ((pret_gages.flag_prendre_est)::integer)
  • Buffers: shared hit=144872536 read=9584
2. 105.368 1,568,335.695 ↓ 10,609.0 10,609 1

Sort (cost=8,453,657.51..8,453,657.52 rows=1 width=708) (actual time=1,568,335.093..1,568,335.695 rows=10,609 loops=1)

  • Output: soc.soc_id, tranches.no_tranches, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))), pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.localite, ((SubPlan 1)), fam_prod.desc_courte, prod.pro_id, pret_garanties.pret_garantie_id, ((pret_gages.flag_principal)::integer), pret_gages.dte_liberation, ((pret_gages.flag_prendre_est)::integer), soc.desc_courte, prod.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, pret_estimation.valeur_venale_corrigee, pret_garanties.mnt, ecritures.solde, ecritures.mnt_nominal, pret_garanties.dte_liberation
  • Sort Key: soc.soc_id, tranches.no_tranches, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))), pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.localite, ((SubPlan 1)), fam_prod.desc_courte, prod.pro_id, pret_garanties.pret_garantie_id, ((pret_gages.flag_principal)::integer), pret_gages.dte_liberation, ((pret_gages.flag_prendre_est)::integer)
  • Sort Method: quicksort Memory: 3203kB
  • Buffers: shared hit=144872536 read=9584
3. 240,254.068 1,568,230.327 ↓ 10,609.0 10,609 1

Nested Loop Left Join (cost=2.26..8,453,657.50 rows=1 width=708) (actual time=130,418.618..1,568,230.327 rows=10,609 loops=1)

  • Output: soc.soc_id, tranches.no_tranches, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))), pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.localite, (SubPlan 1), fam_prod.desc_courte, prod.pro_id, pret_garanties.pret_garantie_id, (pret_gages.flag_principal)::integer, pret_gages.dte_liberation, (pret_gages.flag_prendre_est)::integer, soc.desc_courte, prod.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, pret_estimation.valeur_venale_corrigee, pret_garanties.mnt, ecritures.solde, ecritures.mnt_nominal, pret_garanties.dte_liberation
  • Inner Unique: true
  • Join Filter: (pret_gages_immobiliers.pret_gages_id = pret_gages.pret_gages_id)
  • Rows Removed by Join Filter: 2245784354
  • Buffers: shared hit=144872524 read=9584
4. 334,298.677 1,160,598.066 ↓ 10,609.0 10,609 1

Nested Loop Left Join (cost=2.26..8,445,334.17 rows=1 width=161) (actual time=130,353.501..1,160,598.066 rows=10,609 loops=1)

  • Output: prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, ecritures.solde, ecritures.mnt_nominal, pret_garanties.mnt, pret_garanties.pret_garantie_id, pret_garanties.dte_liberation, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id, pret_estimation.valeur_venale_corrigee, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text)))
  • Join Filter: (pret_estimation.pret_gages_id = pret_gages.pret_gages_id)
  • Rows Removed by Join Filter: 3056718188
  • Buffers: shared hit=108490530 read=9584
5. 238,284.969 596,094.698 ↓ 10,609.0 10,609 1

Nested Loop Left Join (cost=2.26..8,433,857.33 rows=1 width=156) (actual time=130,279.462..596,094.698 rows=10,609 loops=1)

  • Output: prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, ecritures.solde, ecritures.mnt_nominal, pret_garanties.mnt, pret_garanties.pret_garantie_id, pret_garanties.dte_liberation, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text)))
  • Join Filter: (pret_garanties.dossier_gen_id = dossier_gen.dossier_gen_id)
  • Rows Removed by Join Filter: 2241312201
  • Filter: (pret_garanties.dte_liberation IS NULL)
  • Rows Removed by Filter: 1268
  • Buffers: shared hit=55509184 read=9584
6. 4,099.045 189,100.832 ↓ 5,271.0 5,271 1

Nested Loop Left Join (cost=2.26..8,416,668.93 rows=1 width=147) (actual time=130,172.437..189,100.832 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, ecritures.solde, ecritures.mnt_nominal, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id, (((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text)))
  • Inner Unique: true
  • Join Filter: (a1_part_pret.part_id = pret_roles.part_id)
  • Rows Removed by Join Filter: 65399970
  • Buffers: shared hit=15338893 read=9584
7. 58.294 154,076.830 ↓ 5,271.0 5,271 1

Nested Loop Left Join (cost=2.26..8,415,843.89 rows=1 width=119) (actual time=130,163.062..154,076.830 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, ecritures.solde, ecritures.mnt_nominal, pret_roles.part_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Filter: ((ecritures.ecritures_id = (SubPlan 4)) OR (ecritures.ecritures_id IS NULL))
  • Rows Removed by Filter: 6159
  • Buffers: shared hit=14202888 read=9584
8. 246.258 152,173.035 ↓ 5,271.0 5,271 1

Nested Loop Left Join (cost=1.97..8,403,905.40 rows=1 width=114) (actual time=130,163.002..152,173.035 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, tranches.tranches_id, plan_finan_chan.plan_finan_chan_id, pret_roles.part_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Join Filter: (plan_finan_chan.tranches_id = tranches.tranches_id)
  • Rows Removed by Join Filter: 1734117
  • Buffers: shared hit=12685285 read=9584
9. 6,040.538 151,773.918 ↓ 5,271.0 5,271 1

Nested Loop (cost=1.97..8,403,891.00 rows=1 width=110) (actual time=130,162.886..151,773.918 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches.no_tranches, tranches.tranches_id, pret_roles.part_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Inner Unique: true
  • Join Filter: (tranches_gen.tranches_id = tranches.tranches_id)
  • Rows Removed by Join Filter: 69895694
  • Buffers: shared hit=12648388 read=9584
10. 81,821.213 140,762.827 ↓ 5,271.0 5,271 1

Nested Loop (cost=1.97..8,403,280.62 rows=1 width=99) (actual time=130,159.277..140,762.827 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches_gen.tranches_id, pret_roles.part_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Join Filter: (pret_gen.dossier_gen_id = pret_roles.dossier_gen_id)
  • Rows Removed by Join Filter: 1131978876
  • Buffers: shared hit=11824164 read=9584
11. 312.953 312.953 ↓ 71.3 214,757 1

Seq Scan on atlas.pret_roles (cost=0.00..15,771.65 rows=3,012 width=8) (actual time=0.824..312.953 rows=214,757 loops=1)

  • Output: pret_roles.pret_roles_id, pret_roles.part_id, pret_roles.dossier_gen_id, pret_roles.role, pret_roles.flag_principal, pret_roles.dn_partenaire_representant_id, pret_roles.flag_correspondance, pret_roles.flag_facture, pret_roles.usr_log_i, pret_roles.dte_log_i, pret_roles.usr_log_u, pret_roles.dte_log_u, pret_roles.audit, pret_roles.rang
  • Filter: ((pret_roles.flag_principal)::integer = 1)
  • Rows Removed by Filter: 387686
  • Buffers: shared hit=329 read=6406
12. 49,687.579 58,628.661 ↓ 277.4 5,271 214,757

Materialize (cost=1.97..8,386,650.60 rows=19 width=99) (actual time=0.038..0.273 rows=5,271 loops=214,757)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches_gen.tranches_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Buffers: shared hit=11823835 read=3178
13. 2.231 8,941.082 ↓ 277.4 5,271 1

Nested Loop Left Join (cost=1.97..8,386,650.51 rows=19 width=99) (actual time=8,185.007..8,941.082 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches_gen.tranches_id, pret_gages.flag_principal, pret_gages.dte_liberation, pret_gages.flag_prendre_est, pret_gages.pret_gages_id
  • Filter: ((pret_gages.dte_liberation IS NULL) AND (((pret_gages.flag_principal)::integer IS NULL) OR ((pret_gages.flag_principal)::integer = 1)))
  • Rows Removed by Filter: 2371
  • Buffers: shared hit=11823835 read=3178
14. 1.442 8,917.767 ↓ 3.5 5,271 1

Nested Loop (cost=1.54..8,385,874.50 rows=1,510 width=89) (actual time=8,183.875..8,917.767 rows=5,271 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte, tranches_gen.capital_restant_du, tranches_gen.mnt_nominal, tranches_gen.tx_int_dero, tranches_gen.tx_int_applique, tranches_gen.dte_echeance, tranches_gen.tx_amort, tranches_gen.type_tx_int, tranches_gen.tranches_id
  • Buffers: shared hit=11802778 read=3148
15. 2.341 8,857.205 ↓ 3.4 3,695 1

Nested Loop (cost=1.12..8,385,227.03 rows=1,087 width=55) (actual time=7,392.243..8,857.205 rows=3,695 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, pret_gen.pret_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, soc.soc_id, soc.desc_courte
  • Inner Unique: true
  • Join Filter: (fam_prod.soc_id = soc.soc_id)
  • Rows Removed by Join Filter: 7640
  • Buffers: shared hit=11787723 read=2990
16. 3.830 8,854.864 ↓ 3.4 3,695 1

Nested Loop (cost=1.12..8,385,124.01 rows=1,087 width=50) (actual time=7,392.223..8,854.864 rows=3,695 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, pret_gen.pret_gen_id, prod.desc_courte, prod.pro_id, fam_prod.desc_courte, fam_prod.soc_id
  • Inner Unique: true
  • Join Filter: (prod.fam_id = fam_prod.fam_id)
  • Rows Removed by Join Filter: 51279
  • Buffers: shared hit=11787722 read=2990
17. 4.203 8,847.339 ↓ 3.4 3,695 1

Nested Loop (cost=1.12..8,384,485.72 rows=1,087 width=41) (actual time=7,392.191..8,847.339 rows=3,695 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, pret_gen.pret_gen_id, prod.desc_courte, prod.pro_id, prod.fam_id
  • Inner Unique: true
  • Join Filter: (pret.dn_produit_dp_id = prod.pro_id)
  • Rows Removed by Join Filter: 51716
  • Buffers: shared hit=11787721 read=2990
18. 1.945 8,839.441 ↓ 3.4 3,695 1

Nested Loop (cost=1.12..8,382,131.70 rows=1,087 width=16) (actual time=7,392.147..8,839.441 rows=3,695 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, pret_gen.pret_gen_id, pret.dn_produit_dp_id
  • Inner Unique: true
  • Buffers: shared hit=11787718 read=2990
19. 5.491 8,830.106 ↓ 3.4 3,695 1

Nested Loop (cost=0.84..8,381,805.01 rows=1,087 width=16) (actual time=7,392.107..8,830.106 rows=3,695 loops=1)

  • Output: dossier_gen.dossier_gen_id, pret_gen.dossier_gen_id, pret_gen.pret_id, pret_gen.pret_gen_id
  • Buffers: shared hit=11776622 read=2990
20. 153.235 8,753.453 ↓ 5.1 5,474 1

Nested Loop (cost=0.42..8,381,300.93 rows=1,063 width=4) (actual time=168.216..8,753.453 rows=5,474 loops=1)

  • Output: dossier_gen.dossier_gen_id
  • Inner Unique: true
  • Buffers: shared hit=11756682 read=2902
21. 105.098 105.098 ↑ 1.0 212,378 1

Seq Scan on atlas.dossier_gen (cost=0.00..5,635.66 rows=212,570 width=8) (actual time=0.468..105.098 rows=212,378 loops=1)

  • Output: dossier_gen.dossier_gen_id, dossier_gen.mut_dossier_id, dossier_gen.visa_controleur, dossier_gen.dte_validation, dossier_gen.etat_dossier, dossier_gen.usr_log_i, dossier_gen.dte_log_i, dossier_gen.usr_log_u, dossier_gen.dte_log_u, dossier_gen.audit, dossier_gen.confidentiel, dossier_gen.flag_lettre_chtx, dossier_gen.flag_envoi_decompte, dossier_gen.conditions_generales, dossier_gen.type_affaire
  • Filter: ((dossier_gen.etat_dossier)::text <> 'REMB'::text)
  • Rows Removed by Filter: 6315
  • Buffers: shared read=2902
22. 424.756 8,495.120 ↓ 0.0 0 212,378

Index Scan using p_key_mut_dos on atlas.mut_dossier (cost=0.42..39.40 rows=1 width=8) (actual time=0.040..0.040 rows=0 loops=212,378)

  • Output: mut_dossier.mut_dossier_id, mut_dossier.dossier_id, mut_dossier.per_gest_id, mut_dossier.mut_id, mut_dossier.dte_jour, mut_dossier.dte_mut, mut_dossier.statut, mut_dossier.no_mut_prec, mut_dossier.no_mut_suiv, mut_dossier.dn_pret_id, mut_dossier.dn_pret_no, mut_dossier.dn_tranches_id, mut_dossier.usr_modif_par, mut_dossier.dte_modif, mut_dossier.usr_contrl_par, mut_dossier.dte_contrl, mut_dossier.code_traitement_chgtx, mut_dossier.flag_recalcul_annuite_chgtx, mut_dossier.flag_simulation_chgtx, mut_dossier.description, mut_dossier.no_mut_dp, mut_dossier.usr_log_i, mut_dossier.dte_log_i, mut_dossier.usr_log_u, mut_dossier.dte_log_u, mut_dossier.audit, mut_dossier.nouveau_cas, mut_dossier.pas_de_cas, mut_dossier.cas_id, mut_dossier.type_cas
  • Index Cond: (mut_dossier.mut_dossier_id = dossier_gen.mut_dossier_id)
  • Filter: (mut_dossier.mut_dossier_id = (SubPlan 2))
  • Rows Removed by Filter: 1
  • Buffers: shared hit=11756682
23.          

SubPlan (for Index Scan)

24. 849.512 8,070.364 ↑ 1.0 1 212,378

Aggregate (cost=38.93..38.94 rows=1 width=4) (actual time=0.038..0.038 rows=1 loops=212,378)

  • Output: max(a_1.mut_dossier_id)
  • Buffers: shared hit=10906029
25. 7,220.852 7,220.852 ↓ 1.5 53 212,378

Index Scan using idx_mut_dossier_dossier_id on atlas.mut_dossier a_1 (cost=0.42..38.84 rows=35 width=4) (actual time=0.003..0.034 rows=53 loops=212,378)

  • Output: a_1.mut_dossier_id, a_1.dossier_id, a_1.per_gest_id, a_1.mut_id, a_1.dte_jour, a_1.dte_mut, a_1.statut, a_1.no_mut_prec, a_1.no_mut_suiv, a_1.dn_pret_id, a_1.dn_pret_no, a_1.dn_tranches_id, a_1.usr_modif_par, a_1.dte_modif, a_1.usr_contrl_par, a_1.dte_contrl, a_1.code_traitement_chgtx, a_1.flag_recalcul_annuite_chgtx, a_1.flag_simulation_chgtx, a_1.description, a_1.no_mut_dp, a_1.usr_log_i, a_1.dte_log_i, a_1.usr_log_u, a_1.dte_log_u, a_1.audit, a_1.nouveau_cas, a_1.pas_de_cas, a_1.cas_id, a_1.type_cas
  • Index Cond: (mut_dossier.dossier_id = a_1.dossier_id)
  • Filter: ((a_1.dte_mut <= '2019-12-31'::date) AND ((a_1.statut)::text = 'VALI'::text))
  • Rows Removed by Filter: 2
  • Buffers: shared hit=10906029
26. 71.162 71.162 ↑ 1.0 1 5,474

Index Scan using idx4fk_f_dos_gen_pret_gen on atlas.pret_gen (cost=0.42..0.46 rows=1 width=12) (actual time=0.013..0.013 rows=1 loops=5,474)

  • Output: pret_gen.pret_gen_id, pret_gen.pret_id, pret_gen.dossier_gen_id, pret_gen.tx_avance_1_rang, pret_gen.tx_avance_2_rang, pret_gen.tx_avance_autr, pret_gen.frequence_annuite, pret_gen.dn_cate_ancien_dp_id, pret_gen.traite_par, pret_gen.gere_par, pret_gen.dte_derniere_echeance, pret_gen.dte_prochaine_echeance, pret_gen.mnt_prom_consol, pret_gen.etat, pret_gen.dn_demande_gen_id, pret_gen.dte_remb, pret_gen.flag_lien_architecte, pret_gen.dte_edition_contrat, pret_gen.tx_avance_technq_1er_rang, pret_gen.usr_log_i, pret_gen.dte_log_i, pret_gen.usr_log_u, pret_gen.dte_log_u, pret_gen.audit, pret_gen.flag_stat_complement, pret_gen.flag_stat_sus_amort, pret_gen.flag_stat_conver_tranche, pret_gen.flag_stat_delegation_pret, pret_gen.flag_stat_lib_garantie, pret_gen.flag_stat_remb_tranche, pret_gen.flag_stat_maj_etat_dossier, pret_gen.flag_stat_maj_lettre_chtx, pret_gen.flag_stat_maj_garantie, pret_gen.flag_stat_maj_gage, pret_gen.flag_stat_lib_gage, pret_gen.flag_stat_maj_dossier, pret_gen.flag_stat_maj_part, pret_gen.flag_stat_maj_nominal, pret_gen.flag_stat_maj_finance, pret_gen.flag_stat_fact_frais
  • Index Cond: (pret_gen.dossier_gen_id = dossier_gen.dossier_gen_id)
  • Buffers: shared hit=19940 read=88
27. 7.390 7.390 ↑ 1.0 1 3,695

Index Scan using p_key_pret on atlas.pret (cost=0.28..0.30 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=3,695)

  • Output: pret.pret_id, pret.dossier_id, pret.no_pret, pret.dn_produit_dp_id, pret.dn_famille_dp_id, pret.date_debut_pret, pret.usr_log_i, pret.dte_log_i, pret.usr_log_u, pret.dte_log_u, pret.audit
  • Index Cond: (pret.pret_id = pret_gen.pret_id)
  • Buffers: shared hit=11096
28. 3.614 3.695 ↑ 9.7 15 3,695

Materialize (cost=0.00..5.17 rows=145 width=29) (actual time=0.000..0.001 rows=15 loops=3,695)

  • Output: prod.desc_courte, prod.pro_id, prod.fam_id
  • Buffers: shared hit=3
29. 0.081 0.081 ↑ 1.1 130 1

Seq Scan on produit.prod (cost=0.00..4.45 rows=145 width=29) (actual time=0.015..0.081 rows=130 loops=1)

  • Output: prod.desc_courte, prod.pro_id, prod.fam_id
  • Buffers: shared hit=3
30. 3.668 3.695 ↑ 2.7 15 3,695

Materialize (cost=0.00..1.60 rows=40 width=17) (actual time=0.000..0.001 rows=15 loops=3,695)

  • Output: fam_prod.desc_courte, fam_prod.fam_id, fam_prod.soc_id
  • Buffers: shared hit=1
31. 0.027 0.027 ↑ 1.3 30 1

Seq Scan on produit.fam_prod (cost=0.00..1.40 rows=40 width=17) (actual time=0.018..0.027 rows=30 loops=1)

  • Output: fam_prod.desc_courte, fam_prod.fam_id, fam_prod.soc_id
  • Buffers: shared hit=1
32. 0.000 0.000 ↑ 2.3 3 3,695

Materialize (cost=0.00..1.10 rows=7 width=9) (actual time=0.000..0.000 rows=3 loops=3,695)

  • Output: soc.soc_id, soc.desc_courte
  • Buffers: shared hit=1
33. 0.019 0.019 ↑ 1.2 6 1

Seq Scan on produit.soc (cost=0.00..1.07 rows=7 width=9) (actual time=0.014..0.019 rows=6 loops=1)

  • Output: soc.soc_id, soc.desc_courte
  • Buffers: shared hit=1
34. 59.120 59.120 ↑ 2.0 1 3,695

Index Scan using idx4fk_f_pre_gen_tra_gen on atlas.tranches_gen (cost=0.42..0.58 rows=2 width=42) (actual time=0.013..0.016 rows=1 loops=3,695)

  • Output: tranches_gen.tranches_gen_id, tranches_gen.pret_gen_id, tranches_gen.tranches_id, tranches_gen.tx_amort, tranches_gen.tx_avance, tranches_gen.tx_int_dero, tranches_gen.marge_dero, tranches_gen.tx_plafond, tranches_gen.mnt_annuite, tranches_gen.mnt_annuite_ancien, tranches_gen.dte_debut_sus, tranches_gen.raison_sus, tranches_gen.dte_fin_sus, tranches_gen.echeance_tx_plafond, tranches_gen.type_tx_int, tranches_gen.raison_tx_dero, tranches_gen.code_recalcul_annuite, tranches_gen.flag_amort_indirect, tranches_gen.capital_initial, tranches_gen.tx_fixe_id, tranches_gen.dte_tx_base, tranches_gen.mnt_nominal, tranches_gen.capital_restant_du, tranches_gen.dte_rembourse, tranches_gen.mnt_amort_min, tranches_gen.mnt_amort_min_ancien, tranches_gen.dte_echeance, tranches_gen.dte_1_decais, tranches_gen.nb_jours_int, tranches_gen.flag_cloture_auto, tranches_gen.tx_int_applique, tranches_gen.tx_marge_rating_dp_id, tranches_gen.tx_marge_ancien, tranches_gen.tx_marge_avance_id, tranches_gen.tx_marge_gage_id, tranches_gen.tx_base_id, tranches_gen.tx_marge_produit_id, tranches_gen.etat, tranches_gen.flag_tx_dero_applique, tranches_gen.dn_tranches_demande_gen_id, tranches_gen.code_conversion, tranches_gen.flag_exist_avant_mut, tranches_gen.dn_prec_tranche_gen_id, tranches_gen.flag_interet_minimum, tranches_gen.tx_avance_technq, tranches_gen.usr_log_i, tranches_gen.dte_log_i, tranches_gen.usr_log_u, tranches_gen.dte_log_u, tranches_gen.audit, tranches_gen.mnt_nominal_stat, tranches_gen.flag_decaiss_en_cours, tranches_gen.flag_report_sur_2e_rang, tranches_gen.flag_susp_determinee, tranches_gen.flag_susp_indeterminee, tranches_gen.flag_susp_autre, tranches_gen.tx_marge_plus_bas_r2_id, tranches_gen.origine_conversion, tranches_gen.accept_empty_origine_conversion
  • Index Cond: (tranches_gen.pret_gen_id = pret_gen.pret_gen_id)
  • Filter: ((tranches_gen.etat)::text <> 'REMB'::text)
  • Rows Removed by Filter: 2
  • Buffers: shared hit=15055 read=158
35. 21.084 21.084 ↑ 2.0 1 5,271

Index Scan using idx4fk_f_dos_gen_gages on atlas.pret_gages (cost=0.42..0.48 rows=2 width=14) (actual time=0.004..0.004 rows=1 loops=5,271)

  • Output: pret_gages.pret_gages_id, pret_gages.dossier_gen_id, pret_gages.gage_niv1_id, pret_gages.gage_niv2_id, pret_gages.flag_prendre_est, pret_gages.dte_liberation, pret_gages.etat, pret_gages.flag_principal, pret_gages.flag_exist_avant_mut, pret_gages.dn_prec_gages_id, pret_gages.usr_log_i, pret_gages.dte_log_i, pret_gages.usr_log_u, pret_gages.dte_log_u, pret_gages.audit
  • Index Cond: (pret_gages.dossier_gen_id = dossier_gen.dossier_gen_id)
  • Buffers: shared hit=21057 read=30
36. 4,970.553 4,970.553 ↑ 1.3 13,261 5,271

Seq Scan on atlas.tranches (cost=0.00..387.39 rows=17,839 width=15) (actual time=0.003..0.943 rows=13,261 loops=5,271)

  • Output: tranches.tranches_id, tranches.pret_id, tranches.dernier_no_tranches_gen_id, tranches.dn_tranches_dp_id, tranches.no_tranches_reprise, tranches.no_tranches, tranches.usr_log_i, tranches.dte_log_i, tranches.usr_log_u, tranches.dte_log_u, tranches.audit
  • Buffers: shared hit=824224
37. 152.859 152.859 ↑ 1.0 329 5,271

Seq Scan on atlas.plan_finan_chan (cost=0.00..10.29 rows=329 width=8) (actual time=0.002..0.029 rows=329 loops=5,271)

  • Output: plan_finan_chan.plan_finan_chan_id, plan_finan_chan.tranches_id, plan_finan_chan.total_mnt_devise, plan_finan_chan.total_mnt_actualise, plan_finan_chan.total_mnt_paye_cc, plan_finan_chan.total_mnt_paye_fonds_propres, plan_finan_chan.total_solde_payer, plan_finan_chan.cfc_mnt_depassement, plan_finan_chan.mnt_avance, plan_finan_chan.mnt_avance_initiale, plan_finan_chan.prix_revient_m2, plan_finan_chan.ecr_solde, plan_finan_chan.ecr_capital_initial, plan_finan_chan.ecr_mnt_nominal, plan_finan_chan.ecr_disponible, plan_finan_chan.ecr_mnt_fon_prop_verses, plan_finan_chan.ecr_mnt_fon_prop_a_verser, plan_finan_chan.usr_log_i, plan_finan_chan.dte_log_i, plan_finan_chan.usr_log_u, plan_finan_chan.dte_log_u, plan_finan_chan.audit, plan_finan_chan.date_devis_actualise, plan_finan_chan.date_avancement_travaux, plan_finan_chan.type_avancement_travaux, plan_finan_chan.pourcentage_avancement_travaux, plan_finan_chan.nouveau_cas, plan_finan_chan.pas_de_cas, plan_finan_chan.cas_id, plan_finan_chan.type_cas
  • Buffers: shared hit=36897
38. 5.271 5.271 ↑ 121.0 1 5,271

Index Scan using idx4fk_f_pla_fin_cha_ecr on atlas.ecritures (cost=0.29..5.99 rows=121 width=21) (actual time=0.001..0.001 rows=1 loops=5,271)

  • Output: ecritures.ecritures_id, ecritures.caracter_type_ecr_id, ecritures.plan_finan_chan_id, ecritures.mnt, ecritures.mnt_ancien, ecritures.no_encaissement, ecritures.description, ecritures.commentaire, ecritures.statut, ecritures.dte_valeur, ecritures.mnt_nominal, ecritures.solde, ecritures.capital_initial, ecritures.disponible, ecritures.flag_a_envoyer, ecritures.raison_extourne, ecritures.dn_partenaire_id, ecritures.dn_tranches_gen_id, ecritures.communication1, ecritures.communication2, ecritures.communication3, ecritures.communication4, ecritures.no_ecriture_dp, ecritures.mnt_ancien_nominal, ecritures.mnt_diff_nominal, ecritures.periode_gestion_id, ecritures.date_extourne, ecritures.usr_log_i, ecritures.dte_log_i, ecritures.usr_log_u, ecritures.dte_log_u, ecritures.audit, ecritures.deja_paye, ecritures.nouveau_cas, ecritures.pas_de_cas, ecritures.cas_id, ecritures.type_cas
  • Index Cond: (ecritures.plan_finan_chan_id = plan_finan_chan.plan_finan_chan_id)
  • Buffers: shared hit=2686
39.          

SubPlan (for Nested Loop Left Join)

40. 0.000 1,840.230 ↑ 1.0 1 11,430

Aggregate (cost=98.59..98.60 rows=1 width=4) (actual time=0.161..0.161 rows=1 loops=11,430)

  • Output: max(b.ecritures_id)
  • Buffers: shared hit=1514917
41.          

Initplan (for Aggregate)

42. 148.824 1,140.984 ↑ 1.0 1 6,201

Aggregate (cost=49.86..49.87 rows=1 width=4) (actual time=0.184..0.184 rows=1 loops=6,201)

  • Output: max(a_2.dte_valeur)
  • Buffers: shared hit=743207
43. 217.035 992.160 ↓ 3.2 368 6,201

Nested Loop (cost=0.72..49.57 rows=116 width=4) (actual time=0.006..0.160 rows=368 loops=6,201)

  • Output: a_2.dte_valeur
  • Buffers: shared hit=743207
44. 6.201 18.603 ↑ 1.0 1 6,201

Nested Loop (cost=0.43..3.78 rows=1 width=4) (actual time=0.002..0.003 rows=1 loops=6,201)

  • Output: p.plan_finan_chan_id
  • Buffers: shared hit=24805
45. 6.201 6.201 ↑ 1.0 1 6,201

Index Scan using idx4fk_f_tra_pla_fin on atlas.plan_finan_chan p (cost=0.15..2.37 rows=1 width=8) (actual time=0.001..0.001 rows=1 loops=6,201)

  • Output: p.plan_finan_chan_id, p.tranches_id, p.total_mnt_devise, p.total_mnt_actualise, p.total_mnt_paye_cc, p.total_mnt_paye_fonds_propres, p.total_solde_payer, p.cfc_mnt_depassement, p.mnt_avance, p.mnt_avance_initiale, p.prix_revient_m2, p.ecr_solde, p.ecr_capital_initial, p.ecr_mnt_nominal, p.ecr_disponible, p.ecr_mnt_fon_prop_verses, p.ecr_mnt_fon_prop_a_verser, p.usr_log_i, p.dte_log_i, p.usr_log_u, p.dte_log_u, p.audit, p.date_devis_actualise, p.date_avancement_travaux, p.type_avancement_travaux, p.pourcentage_avancement_travaux, p.nouveau_cas, p.pas_de_cas, p.cas_id, p.type_cas
  • Index Cond: (p.tranches_id = tranches.tranches_id)
  • Buffers: shared hit=12402
46. 6.201 6.201 ↑ 1.0 1 6,201

Index Only Scan using p_key_tranches on atlas.tranches t (cost=0.29..1.41 rows=1 width=4) (actual time=0.001..0.001 rows=1 loops=6,201)

  • Output: t.tranches_id
  • Index Cond: (t.tranches_id = tranches.tranches_id)
  • Heap Fetches: 0
  • Buffers: shared hit=12403
47. 756.522 756.522 ↓ 3.1 368 6,201

Index Scan using idx4fk_f_pla_fin_cha_ecr on atlas.ecritures a_2 (cost=0.29..44.62 rows=117 width=8) (actual time=0.003..0.122 rows=368 loops=6,201)

  • Output: a_2.ecritures_id, a_2.caracter_type_ecr_id, a_2.plan_finan_chan_id, a_2.mnt, a_2.mnt_ancien, a_2.no_encaissement, a_2.description, a_2.commentaire, a_2.statut, a_2.dte_valeur, a_2.mnt_nominal, a_2.solde, a_2.capital_initial, a_2.disponible, a_2.flag_a_envoyer, a_2.raison_extourne, a_2.dn_partenaire_id, a_2.dn_tranches_gen_id, a_2.communication1, a_2.communication2, a_2.communication3, a_2.communication4, a_2.no_ecriture_dp, a_2.mnt_ancien_nominal, a_2.mnt_diff_nominal, a_2.periode_gestion_id, a_2.date_extourne, a_2.usr_log_i, a_2.dte_log_i, a_2.usr_log_u, a_2.dte_log_u, a_2.audit, a_2.deja_paye, a_2.nouveau_cas, a_2.pas_de_cas, a_2.cas_id, a_2.type_cas
  • Index Cond: (a_2.plan_finan_chan_id = p.plan_finan_chan_id)
  • Filter: ((a_2.dte_valeur <= '2019-12-31'::date) AND ((a_2.statut)::text = 'VALI'::text))
  • Rows Removed by Filter: 13
  • Buffers: shared hit=718402
48. 16.452 1,828.800 ↓ 2.0 2 11,430

Nested Loop (cost=0.72..48.72 rows=1 width=4) (actual time=0.151..0.160 rows=2 loops=11,430)

  • Output: b.ecritures_id
  • Buffers: shared hit=1514917
49. 16.767 1,794.510 ↓ 2.0 2 11,430

Nested Loop (cost=0.44..47.30 rows=1 width=8) (actual time=0.149..0.157 rows=2 loops=11,430)

  • Output: b.ecritures_id, c.tranches_id
  • Buffers: shared hit=1479240
50. 22.860 22.860 ↑ 1.0 1 11,430

Index Scan using idx4fk_f_tra_pla_fin on atlas.plan_finan_chan c (cost=0.15..2.37 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=11,430)

  • Output: c.plan_finan_chan_id, c.tranches_id, c.total_mnt_devise, c.total_mnt_actualise, c.total_mnt_paye_cc, c.total_mnt_paye_fonds_propres, c.total_solde_payer, c.cfc_mnt_depassement, c.mnt_avance, c.mnt_avance_initiale, c.prix_revient_m2, c.ecr_solde, c.ecr_capital_initial, c.ecr_mnt_nominal, c.ecr_disponible, c.ecr_mnt_fon_prop_verses, c.ecr_mnt_fon_prop_a_verser, c.usr_log_i, c.dte_log_i, c.usr_log_u, c.dte_log_u, c.audit, c.date_devis_actualise, c.date_avancement_travaux, c.type_avancement_travaux, c.pourcentage_avancement_travaux, c.nouveau_cas, c.pas_de_cas, c.cas_id, c.type_cas
  • Index Cond: (c.tranches_id = tranches.tranches_id)
  • Buffers: shared hit=17631
51. 1,754.883 1,754.883 ↓ 3.0 3 6,201

Index Scan using idx4fk_f_pla_fin_cha_ecr on atlas.ecritures b (cost=0.29..44.93 rows=1 width=8) (actual time=0.270..0.283 rows=3 loops=6,201)

  • Output: b.ecritures_id, b.caracter_type_ecr_id, b.plan_finan_chan_id, b.mnt, b.mnt_ancien, b.no_encaissement, b.description, b.commentaire, b.statut, b.dte_valeur, b.mnt_nominal, b.solde, b.capital_initial, b.disponible, b.flag_a_envoyer, b.raison_extourne, b.dn_partenaire_id, b.dn_tranches_gen_id, b.communication1, b.communication2, b.communication3, b.communication4, b.no_ecriture_dp, b.mnt_ancien_nominal, b.mnt_diff_nominal, b.periode_gestion_id, b.date_extourne, b.usr_log_i, b.dte_log_i, b.usr_log_u, b.dte_log_u, b.audit, b.deja_paye, b.nouveau_cas, b.pas_de_cas, b.cas_id, b.type_cas
  • Index Cond: (b.plan_finan_chan_id = c.plan_finan_chan_id)
  • Filter: ((b.dte_valeur <= '2019-12-31'::date) AND (b.dte_valeur = $5) AND ((b.statut)::text = 'VALI'::text))
  • Rows Removed by Filter: 378
  • Buffers: shared hit=1461609
52. 17.838 17.838 ↑ 1.0 1 17,838

Index Only Scan using p_key_tranches on atlas.tranches d (cost=0.29..1.41 rows=1 width=4) (actual time=0.001..0.001 rows=1 loops=17,838)

  • Output: d.tranches_id
  • Index Cond: (d.tranches_id = tranches.tranches_id)
  • Heap Fetches: 0
  • Buffers: shared hit=35677
53. 30,924.957 30,924.957 ↑ 1.3 12,409 5,271

Seq Scan on atlas.part a1_part_pret (cost=0.00..621.56 rows=16,278 width=36) (actual time=0.006..5.867 rows=12,409 loops=5,271)

  • Output: a1_part_pret.part_id, ((btrim((COALESCE(a1_part_pret.nom_part, ''::character varying))::text) || ' '::text) || btrim((COALESCE(a1_part_pret.prenom_part, ''::character varying))::text))
  • Buffers: shared hit=1136005
54. 168,708.897 168,708.897 ↑ 1.0 425,218 5,271

Seq Scan on atlas.pret_garanties (cost=0.00..11,873.18 rows=425,218 width=17) (actual time=0.002..32.007 rows=425,218 loops=5,271)

  • Output: pret_garanties.pret_garantie_id, pret_garanties.dossier_gen_id, pret_garanties.genre_garantie, pret_garanties.description, pret_garanties.rang_garantie, pret_garanties.dte_envoi, pret_garanties.titre, pret_garanties.dn_part_deposit_id, pret_garanties.dte_creation, pret_garanties.dte_echeance, pret_garanties.mnt, pret_garanties.mnt_disponible, pret_garanties.commentaire, pret_garanties.code_garantie_mobiliere, pret_garanties.type_cautionnement, pret_garanties.dte_retour, pret_garanties.type_garantie, pret_garanties.flag_garantie_princ, pret_garanties.flag_parite_rang, pret_garanties.dn_part_dest_id, pret_garanties.code_engage_notaire_recu, pret_garanties.mnt_realisation, pret_garanties.dte_realisation, pret_garanties.dte_liberation, pret_garanties.etat, pret_garanties.flag_exist_avant_mut, pret_garanties.dn_prec_garanties_id, pret_garanties.usr_log_i, pret_garanties.dte_log_i, pret_garanties.usr_log_u, pret_garanties.dte_log_u, pret_garanties.audit
  • Buffers: shared hit=40170291
55. 230,204.691 230,204.691 ↑ 1.0 288,126 10,609

Seq Scan on atlas.pret_estimation (cost=0.00..7,875.26 rows=288,126 width=9) (actual time=0.002..21.699 rows=288,126 loops=10,609)

  • Output: pret_estimation.pret_estimation_id, pret_estimation.pret_gages_id, pret_estimation.annee_est_rachat, pret_estimation.total_surface_ponderee, pret_estimation.total_volume, pret_estimation.total_est_rachat, pret_estimation.est_fiscale, pret_estimation.annee_est_fiscale, pret_estimation.valeur_base_incendie, pret_estimation.indice_base_incendie, pret_estimation.indice_jour_incendie, pret_estimation.valeur_incendie, pret_estimation.type_volume, pret_estimation.revenu_locatif_habi, pret_estimation.etat_locatif_annualise1, pret_estimation.etat_locatif_annualise2, pret_estimation.tx_capitalisation1, pret_estimation.tx_capitalisation2, pret_estimation.type_etat_locatif, pret_estimation.code_vr_calculer, pret_estimation.valeur_venale_corrigee, pret_estimation.valeur_locative_m2, pret_estimation.prix_revient_m2, pret_estimation.prix_revient_m3, pret_estimation.avance_m2, pret_estimation.valeur_rendement, pret_estimation.valeur_venale, pret_estimation.total_bienfond, pret_estimation.revenu_locatif_comm, pret_estimation.tx_revenu_habi, pret_estimation.tx_revenu_comm, pret_estimation.flag_revenu_locatif_comm, pret_estimation.flag_revenu_locatif_habi, pret_estimation.flag_etat_locatif_comm, pret_estimation.flag_etat_locatif_habi, pret_estimation.usr_log_i, pret_estimation.dte_log_i, pret_estimation.usr_log_u, pret_estimation.dte_log_u, pret_estimation.audit, pret_estimation.flag_visite, pret_estimation.dte_visite, pret_estimation.annee_etats_locatifs, pret_estimation.certif_cecb_enveloppe, pret_estimation.certif_cecb_globale, pret_estimation.dte_controle_cecb, pret_estimation.flag_cecbplus
  • Buffers: shared hit=52981346
56. 167,208.449 167,208.449 ↑ 1.0 211,688 10,609

Seq Scan on atlas.pret_gages_immobiliers (cost=0.00..5,634.81 rows=214,881 width=37) (actual time=0.002..15.761 rows=211,688 loops=10,609)

  • Output: pret_gages_immobiliers.pret_gages_id, pret_gages_immobiliers.annee_construction, pret_gages_immobiliers.annee_renovation, pret_gages_immobiliers.echeance_droit_superficie, pret_gages_immobiliers.rue, pret_gages_immobiliers.no_rue, pret_gages_immobiliers.no_postal, pret_gages_immobiliers.canton, pret_gages_immobiliers.localite, pret_gages_immobiliers.prix_achat, pret_gages_immobiliers.travaux, pret_gages_immobiliers.prix_revient_global, pret_gages_immobiliers.valeur_expertise, pret_gages_immobiliers.dte_expertise, pret_gages_immobiliers.nom_expert, pret_gages_immobiliers.statut_juridique, pret_gages_immobiliers.usr_log_i, pret_gages_immobiliers.dte_log_i, pret_gages_immobiliers.usr_log_u, pret_gages_immobiliers.dte_log_u, pret_gages_immobiliers.dn_cate_rating_dp_id, pret_gages_immobiliers.dte_rating, pret_gages_immobiliers.audit, pret_gages_immobiliers.desc_renovation, pret_gages_immobiliers.mnt_redevance_annuelle, pret_gages_immobiliers.montant_1_rang, pret_gages_immobiliers.montant_2_rang, pret_gages_immobiliers.montant_propose, pret_gages_immobiliers.rev_annuel_minimum, pret_gages_immobiliers.frais_achat, pret_gages_immobiliers.flag_detail_finan, pret_gages_immobiliers.pret_gages_immobiliers_id
  • Buffers: shared hit=36350167
57.          

SubPlan (for Nested Loop Left Join)

58. 169.744 169.744 ↑ 1.0 1 10,609

Index Scan using idx_code_texte_code_cle_code_type on produit.code_texte a (cost=0.28..2.50 rows=1 width=15) (actual time=0.015..0.016 rows=1 loops=10,609)

  • Output: a.texte
  • Index Cond: (((tranches_gen.type_tx_int)::text = (a.code_cle)::text) AND ((a.code_type)::text = 'TypeAtlasTauxInterets'::text))
  • Filter: ((a.codet_langue)::text = 'FR'::text)
  • Buffers: shared hit=31827
Planning time : 62.859 ms
Execution time : 1,568,356.375 ms