sql >> Databasteknik >  >> RDS >> PostgreSQL

Vad betyder hashad underplan i PostgreSQL?

Du har missuppfattningen att optimeraren skriver om SQL-satsen. Så är inte fallet. Att skriva om frågan är uppgiften för frågeskrivaren , som till exempel ersätter åsikter med deras definition. Optimeraren kommer med en sekvens av exekveringssteg för att beräkna resultatet. Den producerar en plan , inte en SQL-sats.

Optimeraren planerar två alternativ:antingen exekvera delplan 1 för varje hittad rad, eller exekvera delplan 2 en gång (observera att den är oberoende av a ), bygg en hashtabell från resultatet och proben som hash för varje rad som finns i a .

Vid exekvering bestämmer sig PostgreSQL för att använda den senare strategin, det är därför delplan 1 aldrig exekveras.




  1. UPPDATERA NESTAD CASE

  2. Hur klassificeras SQL-kommandon | UBIQ

  3. MySQL Släpp flera kolumner

  4. MySQL Multiple Where-klausul