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

WHERE og JOIN-klausuler bestiller ydeevne

Nej, der er ingen grund til at gøre det.

For compileren vil disse to forespørgsler se nøjagtigt ens ud efter optimering. Den vil bruge en teknik kaldet "prædikat-pushdown" og andre teknikker, såsom at skifte join-rækkefølge, til at transformere forespørgslen til den mest effektive form. God indeksering og ajourførte statistikker kan være meget nyttige her.

I meget sjældne tilfælde, hvor compileren ikke har beregnet korrekt, er det nødvendigt at forcere rækkefølgen af ​​joins og prædikater. Men det er ikke måden at gøre det på, da compileren kan se lige igennem det.

Du kan se den eksekveringsplan, som compileren har brugt med EXPLAIN PLAN




  1. PostgreSQL:Hvordan implementerer man minimumskardinalitet?

  2. Hvordan sorterer man objekter i et array inde i en json- eller jsonb-værdi efter en egenskab for objekterne?

  3. Postgres JSONb til XML med tag_name og tag_value

  4. Sqlalchemy og PostgreSql:hvordan indstilles primær nøgle manuelt uden konflikter i fremtiden?