林士博 wrote > I think you should try putting the precomputed boolean temp_eval column > to "EXTERNAL_TRANSLATION" r table. > > And if possible, try creating a conditional index on id where temp_eval is > true, > on "EXTERNAL_TRANSLATION" r table. > > So that, only check this index can get the top 1000 records. I agree that might help. But I would still like to understand what's the reason for difference between the second and the third query. Both contain a simple <column> = <constant> expression, yet one finishes immediately and one runs for 41 minutes. -- View this message in context: http://postgresql.nabble.com/Query-1-000-000-slowdown-after-adding-datetime-comparison-tp5864045p5864173.html Sent from the PostgreSQL - performance mailing list archive at Nabble.com. -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance