PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

В PostgreSQL какво означава хеширан подплан?

Имате погрешното схващане, че оптимизаторът пренаписва SQL израза. Това не е така. Пренаписването на заявката е работа на преписвача на заявки , който например замества изгледите с тяхната дефиниция. Оптимизаторът предлага последователност от стъпки за изпълнение, за да изчисли резултата. Той създава план , а не SQL оператор.

Оптимизаторът планира две алтернативи:или изпълнение на подплан 1 за всеки намерен ред, или изпълнение на подплан 2 веднъж (обърнете внимание, че той е независим от a ), изградете хеш таблица от резултата и проучете този хеш за всеки ред, намерен в a .

По време на изпълнение PostgreSQL решава да използва последната стратегия, поради което подплан 1 никога не се изпълнява.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Обединете няколко реда в един с повече от една стойност на ред в колона

  2. Postgres:вземете мин., макс., обобщени стойности в един избор

  3. Как да конфигурирате репликация от клъстер към клъстер за PostgreSQL

  4. Предоставете всички по конкретна схема в db на групова роля в PostgreSQL

  5. Хибернация:дублираната стойност на ключ нарушава уникалното ограничение