PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Partitionnement PostgreSQL+table :max() et min() inefficaces

Je ne sais pas si cela fonctionnera, mais vous pouvez essayer ceci :

Pour cette session, vous pouvez désactiver toutes les stratégies d'accès sauf celles indexées :

db=> set enable_seqscan = off;
db=> set enable_tidscan = off;
db=> -- your query goes here

De cette façon, seul bitmapscan et indexscan serait activé. PostgreSQL n'aura d'autre choix que d'utiliser des index pour accéder aux données de la table.

Après avoir exécuté votre requête, n'oubliez pas de réactiver seqscan et tidscan en faisant :

db=> set enable_seqscan = on;
db=> set enable_tidscan = on;

Sinon, ces stratégies d'accès seront désactivées pour la session à partir de ce moment.