Odpověď spočívá v této části prováděcího plánu:
Seq Scan ... (actual ... rows=2876756 ...)
...
Rows Removed by Filter: 141052
Protože jsou stejně vráceny téměř všechny řádky, je nejúčinnějším způsobem zpracování dotazu použití sekvenčního skenování a vyřazení několika odfiltrovaných řádků.
Pokud to chcete ověřit, dočasně
SET enable_seqscan = off;
aby se PostgreSQL pokud možno vyhnul sekvenčnímu skenování. Poté můžete otestovat, zda je provádění dotazu rychlejší nebo ne.