Merci pour vos idées, si nous ajoutons un index comme
CREATE INDEX t3_t1_nr ON t3(t1_nr);
la déclaration "MAUVAIS" s'améliorera un peu.
Mais la solution finale pour nous était d'augmenter les statistiques recueillies pour ces tableaux :
ALTER TABLE t1 ALTER COLUMN t1_nr SET STATISTICS 10000;
ALTER TABLE t2 ALTER COLUMN t2_nr SET STATISTICS 10000;
ALTER TABLE t3 ALTER COLUMN t1_nr SET STATISTICS 10000;
ANALYZE t1;
ANALYZE t2;
ANALYZE t3;
Après ce changement, les deux SELECT ont à peu près le même temps d'exécution. Plus d'informations peuvent être trouvées ici :https://www.postgresql.org/docs/12/planner-stats.html