PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Partizionamento PostgreSQL+tabella:max() e min() inefficienti

Non so se funzionerà, ma potresti provare questo:

Per quella sessione, potresti disabilitare tutte le strategie di accesso tranne quelle indicizzate:

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

In questo modo, solo bitmapscan e indexscan sarebbe abilitato. PostgreSQL non avrà altra scelta che usare gli indici per accedere ai dati sulla tabella.

Dopo aver eseguito la query, ricordati di riattivare seqscan e tidscan facendo:

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

In caso contrario, tali strategie di accesso verranno disabilitate per la sessione da quel momento in poi.