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

Forespørgsel bruger ikke indeks på tidsstempel uden tidszonefelt

Svaret ligger i denne del af udførelsesplanen:

Seq Scan ... (actual ... rows=2876756 ...)
  ...
  Rows Removed by Filter: 141052

Da næsten alle rækker alligevel returneres, er det den mest effektive måde at behandle forespørgslen på at bruge en sekventiel scanning og kassere de få rækker, der er filtreret fra.

Hvis du vil bekræfte det, midlertidigt

SET enable_seqscan = off;

for at få PostgreSQL til at undgå en sekventiel scanning, hvis det er muligt. Så kan du teste, om udførelse af forespørgsler bliver hurtigere eller ej.




  1. kan ikke indlæse leverandørbiblioteket libmysql.dll eller libmysqld.dll

  2. INNER JOIN ON vs WHERE-klausul

  3. databaseforespørgsel for at finde tog mellem to stationer på en bestemt dato som irctc.co.in

  4. Flere stigende rækkefølge virker ikke i Mysql