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

Hvorfor bruger Postgres ikke indekset?

På grund af:

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

Du vælger så mange rækker, at det er billigere at læse hele tabellen.

Relaterede tidligere spørgsmål og svar fra i dag til yderligere læsning:

  • Hvorfor bruger Postgresql ikke indeks til IN-forespørgsel?

  • Postgres bruger forkert indeks, når du forespørger på en visning af indekserede udtryk?

(Se også Craigs længere svar på det andet for yderligere bemærkninger om indeksernes finesser.)




  1. Vend tilbage til readline version 6.x i Homebrew for at rette Postgresql?

  2. LINQ til SQL Take w/o Skip Årsager Flere SQL-sætninger

  3. mysql-konfiguration stopper ved start af server

  4. Trin for trin R12.2.6 EBS-installation på Virtual Box