`
hanjian861202
  • 浏览: 164994 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

Oracle:嵌套循环+哈希连接

 
阅读更多

假设我们现在有一条语句,执行的时间需要半个小时,即使我们仅仅需要知道该语句的执行计划,此种情况下,我们必须等待半个小时。因此,如果查询的性能很慢,我们可以选择选择使用explain plan for + select * from table(dbms_xplan.display)命令。

 

select /*+ USE_NL(t2) */ c1,c2 from t1 inner join t2 on c1=d2;

 

  该语句中/*+ USE_NL(t2) */是我们常说的hint提示,这里的USE_NL告诉优化程序使用嵌套连接对表进行连接,t2为内部表。

 

http://developer.51cto.com/art/200911/162657.htm

 

 

http://www.itpub.net/thread-433890-1-1.html 

分享到:
评论

相关推荐

    Oracle++sql+性能优化调整.doc

    - 优化连接操作:考虑使用连接顺序、连接类型(嵌套循环、哈希连接、合并连接)和索引。 - 使用物化视图和汇总表:预先计算和存储结果,减少运行时计算。 - 适当的表分区:对于大型表,分区可以显著提高查询性能和...

    Oracle中表的连接及其调整.

    本文将深入探讨 Oracle 中的三种主要连接方式:嵌套循环连接(Nested Loop)、排序合并连接(Sort Merge)和哈希连接(Hash Join),并结合案例分析其工作原理和优化策略。 1. 嵌套循环连接(Nested Loop) 嵌套...

    几种常用的表连接方式.doc

    本文档主要介绍了四种常用的表连接方式:嵌套循环连接、排列合并连接、哈希连接和索引连接。 1. **嵌套循环连接**: - 嵌套循环连接是通过遍历外部表(驱动表)的每一行,并与内部表的每一行进行比较来实现的。...

    ORACLE表连接方式分析及常见用法

    Oracle提供了多种连接类型,包括嵌套循环连接、群集连接、排序合并连接、笛卡尔连接、哈希连接和索引连接。 1. 嵌套循环连接(NESTED LOOP JOIN):这种连接方式适用于外部表小且内部表有高效索引的情况。Oracle会...

    Oracle中hash join研究.pdf

    哈希连接(Hash Join)是Oracle数据库中的一种高效连接方法,主要针对等值连接操作,其引入旨在解决嵌套循环连接(Nested Loop Join)中的大量随机读取问题以及排序合并连接(Sort-Merge Join)中的排序成本过高问题...

    oracle经典面试题

    * Hash Join:哈希连接是一种高效的连接算法,通过对连接键进行哈希运算来快速匹配记录。 * Merge Join:合并连接是一种基于排序的连接算法,通过对表进行排序来实现连接。 * Nest Loop(Cluster Join):嵌套循环...

    几种常用的表连接方式

    本文将深入探讨四种常用的表连接方式:嵌套循环连接、排列合并连接、哈希连接以及索引连接,并详细阐述每种连接方式的工作原理、适用场景及其优缺点。 #### 1. 嵌套循环连接(Nested Loop Join) 嵌套循环连接是最...

    Oracle SQL表连接技术详解及其应用场景

    内容概要:本文详细介绍了Oracle SQL中的表连接技术,包括常见的连接类型如排序--合并连接(SMJ)、嵌套循环(NL)和哈希连接(HJ)。文中解释了每种连接的工作原理、适用场景以及优缺点,通过具体示例展示了这些...

    Oracle中三种表连接算法的总结

    Oracle数据库在处理表之间的连接操作时,提供了三种主要的连接算法:嵌套循环连接(Nested Loop Join)、排序合并连接(Sort Merge Join)和哈希连接(Hash Join)。这些算法各有特点,适用于不同的数据处理场景。 ...

    oracle 数据库性能调优技术 4 中文

    它通过构建哈希表来实现两个表之间的快速连接,相比于嵌套循环连接,散列连接能显著减少所需的IO操作数量,从而提高查询效率。下面我们将从几个方面来探讨散列连接的优势及其工作原理。 #### 为什么需要散列连接? ...

    实战Oracle SQL调优 hint特性

    - `NO_USE_NL`:指示不使用嵌套循环连接。 4. **并行执行提示** - `PARALLEL`:指示查询使用并行执行。 - `NO_PARALLEL`:指示查询不使用并行执行。 - `PQ_DISTRIBUTE`:指示并行查询的分布策略。 5. **查询...

    hash_join.pdf

    主要内容包括嵌套循环连接(Nested Loops Join, NLJ)、排序合并连接(Sort Merge Join, SMJ)、并行哈希连接、反连接与外连接、哈希连接算法、成本计算、内存中哈希连接、磁盘上哈希连接以及哈希连接的性能调优等...

    第三部分 ORACLE 高效SQL分析1(方法)

    在Oracle中,表连接有三种主要实现方式:嵌套循环连接(Nested Loop Join)、排序合并连接(Sort Merge Join)和哈希连接(Hash Join)。 1. **嵌套循环连接(SMJ)**:适用于一个大表和一个小表的连接场景,小表通常会在...

    Oracle优化常用概念.pptx

    优点:当缺乏索引或者索引条件模糊时,哈希连接连接比嵌套循环有效;通常比排序合并连接快;缺点:为建立哈希表,需要大量内存。 执行计划 执行计划是 Oracle 优化器生成的最佳执行路径,包括索引的使用、表的访问...

    Oracle SQL 优化与调优技术详解-附录:SQL提示

    - HASH:强制使用哈希连接。 - ROWID:强制使用rowid访问。 - INDEX:强制使用索引访问。 - FULL:强制使用全表扫描。 - 以及其它如INDEX_ASC、INDEX_DESC等指示索引排序方向的提示。 关联提示:这类提示用于指定...

    oracle 优化资料

    例如,对于大表之间的连接,哈希连接可能比嵌套循环更有效,因为它避免了多次遍历大表。同时,通过调整SQL语句的编写,避免全表扫描,利用索引,以及合理规划连接顺序,都能进一步提升性能。 总结来说,Oracle...

    oracle hints详细介绍

    - **Nested Loop Join (嵌套循环连接)**:使用`/*+ NESTED LOOPS(t1 t2) */`来强制执行器使用嵌套循环连接。 - **Hash Join (哈希连接)**:通过`/*+ HASH_JOIN(t1 t2) */`来强制执行器使用哈希连接。 - **Merge ...

    ORACLE数据库SQL优化---表连接类型.docx

    - 嵌套循环连接(Nested Loops Join):驱动表的每一行与被驱动表的每一行进行比较,适合小表连接大表的情况。 - 哈希连接(Hash Join):驱动表的数据被哈希化,然后与被驱动表的数据进行匹配,适合处理大数据量...

    Oracle+面试及答案-经典.docx

    7. **嵌套循环连接(NESTED LOOP JOIN)**:对于小表连接大表的情况,Oracle通常选择嵌套循环,即对大表的每一行都与小表进行比较。 8. **索引连接(INDEX JOIN)**:如果其中一个表的连接列上有索引,Oracle可能会...

    《Oracle查询优化改写技巧与案例》PDF版本下载.txt

    - **连接类型**:选择最合适的连接算法(嵌套循环、哈希连接、合并连接等),平衡内存占用与执行效率。 - **分区**:利用表分区技术减少参与连接的数据量,提高处理速度。 #### 2.3 表扫描优化 - **全表扫描与索引...

Global site tag (gtag.js) - Google Analytics