Хеш-соединение (Hash join)
Алгоритм соединения: строится хеш-таблица меньшего отношения (фаза build), затем перебирается большее и ищутся совпадения (фаза probe). O(N+M) — самый быстрый вариант для equi-соединений на средних и больших данных без индексов.
Требует памяти под хеш-таблицу. Если build-отношение больше work_mem (PostgreSQL), оно сбрасывается на диск (hash spill, несколько проходов). Предпочтительный план для аналитических нагрузок (хранилища данных). Адаптивное хеш-соединение начинает в памяти и переходит на диск при нехватке RAM. Конкуренты: nested loop (хорош для малых и индексированных данных), merge join (хорош, если обе стороны отсортированы). Планировщик PostgreSQL выбирает по оценке стоимости. Для неравенств (диапазон, нечёткое совпадение) хеш-соединение не работает.