PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Warum verwendet Postgres den Index nicht?

Wegen:

Seq Scan on invoices  (...) (actual ... rows=118027 <— this
   Filter: (account_id = 1)
   Rows Removed by Filter: 51462                    <— vs this
 Total runtime: 39.917 ms

Sie wählen so viele Zeilen aus, dass es billiger ist, die gesamte Tabelle zu lesen.

Zugehörige frühere Fragen und Antworten von heute zum Weiterlesen:

  • Warum verwendet Postgresql keinen Index für die IN-Abfrage?

  • Postgres verwendet falschen Index beim Abfragen einer Ansicht von indizierten Ausdrücken?

(Siehe auch Craigs längere Antwort auf die zweite für zusätzliche Hinweise zu den Feinheiten der Indizes.)