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

Klauzule WHERE a JOIN plnění objednávky

Ne, není k tomu žádný důvod.

Pro kompilátor budou tyto dva dotazy po optimalizaci vypadat úplně stejně. K transformaci dotazu do nejúčinnější formy použije techniku ​​zvanou „predikátové posunutí dolů“ a další techniky, jako je přepínání pořadí spojení. Dobré indexování a aktuální statistiky zde mohou být velmi užitečné.

Ve velmi vzácných případech, kdy kompilátor nepočítal správně, je nutné vynutit pořadí spojení a predikátů. Ale to není způsob, jak to udělat, protože kompilátor to vidí přímo.

Plán provádění, který kompilátor použil, můžete vidět pomocí EXPLAIN PLAN




  1. Jak získat přístup k jiné systémové databázi mysql pomocí programu Java?

  2. Opakování kurzoru vyvolá chybu, že kurzor není definován

  3. Generování pořadí uspořádané sekvence na komplexní dotaz

  4. Příklady SQL Server PRO JSON PATH (T-SQL)