sql >> Databáze >  >> RDS >> PostgreSQL

Co v PostgreSQL znamená hashovaný podplán?

Máte mylnou představu, že optimalizátor přepisuje příkaz SQL. Není tomu tak. Přepsání dotazu je úkolem přepisovače dotazů , který například nahrazuje pohledy jejich definicí. Optimalizátor přichází s posloupností kroků provádění pro výpočet výsledku. Vytváří plán , nikoli příkaz SQL.

Optimalizátor plánuje dvě alternativy:buď provést podplán 1 pro každý nalezený řádek, nebo provést podplán 2 jednou (všimněte si, že je nezávislý na a ), vytvořte z výsledku hašovací tabulku a prozkoumejte hash pro každý řádek nalezený v a .

V době provádění se PostgreSQL rozhodne použít druhou strategii, proto se podplán 1 nikdy nespustí.




  1. Problém RAISERROR od migrace na SQL Server 2012

  2. Používat utf8 nebo ne - Problém s kódováním znaků MySQL a PHP

  3. Mám md5 zašifrované heslo, jak dát heslo uživateli, když používá Zapomenuté heslo?

  4. Jak změnit počáteční číslo objednávky v Magento