==>>嵌套循環鏈接,哈希鏈接,排序合併鏈接排序
-->>嵌套循環鏈接索引
select * from /*+leading(t1) use_nl(t2)*/ from t1,t2 hash
where t1.id=t2.t1_idselect
and t1.n=19;搜索
這個HINT的含義:leading(t1)表示強制先訪問表t1,use_nl表示強制使用嵌套循環鏈接方式。循環
表t1是驅動表,在驅動表的限制條件(t1.n=19)上加索引,加快t1的搜索速度;t2表是被驅動表,在t2的鏈接條件(t1.id=t2.t1_id)字段t1id上加索引,加快t2的搜索速度。di
-->>哈希鏈接
在PGA中的HASH_ARAE_SIZE
select * from /*+leading(t1) use_hash(t2)*/ from t1,t2
where t1.id=t2.t1_id;
哈希鏈接不支持不等值鏈接<>,不支持>和不支持<的鏈接方式,也不支持like的鏈接方式。
-->>排序合併鏈接
在PGA中SORT_AREA_SIZE
select /*+orderd use_merge(t2)*/ * from t1,t2
where t1.id=t2.t1_id;
排序合併鏈接沒有驅動與被驅動的概念。
排序合併鏈接不支持<>,like的鏈接條件,可是支持>或<的鏈接。