Svaret ligger i denna del av genomförandeplanen:
Seq Scan ... (actual ... rows=2876756 ...)
...
Rows Removed by Filter: 141052
Eftersom nästan alla rader ändå returneras, är det mest effektiva sättet att bearbeta frågan att använda en sekventiell genomsökning och kassera de få raderna som filtreras bort.
Om du vill verifiera det, tillfälligt
SET enable_seqscan = off;
för att få PostgreSQL att undvika en sekventiell genomsökning om möjligt. Sedan kan du testa om exekveringen av sökfrågor blir snabbare eller inte.