11 июля 2011 г.

oracle: hash Joins

http://aguppi.blogspot.com/2011/07/oracle-table-joins.html
Hash Joins (Oracle docs)

Hash Joins используются для объединения больших наборов данных. 
Оптимизатор выбирает меньшую таблицу и создает хеш-таблицу для ключа объединения в памяти. Затем он просматривает другую таблицу(большую) и проверяет хеш таблицу в памяти на совпадения с ней.

Hash Join Hint
/*+ USE_HASH(tab1 tab2)*/

SELECT /*+use_hash(employees departments)*/ * 
FROM employees, departments 
WHERE employees.department_id = departments.department_id;