Благодаря за вашите идеи, ако добавим индекс като
CREATE INDEX t3_t1_nr ON t3(t1_nr);
изявлението „ЛОШО“ ще се подобри малко.
Но окончателното решение за нас беше да увеличим статистическите данни, събрани за тези таблици:
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;
След тази промяна и двата SELECT имат повече за едно и също време на изпълнение. Повече информация можете да намерите тук:https://www.postgresql.org/docs/12/planner-stats.html