{LOOP | MERGE | HASH } JOIN

原创 2009年06月26日 17:51:00

表连接的三种方式
1.循环链接 loop join  消耗N的N次方
2.排序链接 merge join  排序后消耗2n
3.哈希链接 hash join   哈希后2n

 

一般情况下我们不需要指定表的连接方式,数据库引擎会选择消耗资源最小的连接方式,当我们用到表变量,然后用表变量链接,就可能会造成表链接方式不对而过分消耗资源

 

此时我们需要指定表连接方式

 

select count(*)
from @temp A ,@temp2 B
where A.a = B.a
option(LOOP  join)

 

select count(*)
from @temp A ,@temp2 B
where A.a = B.a
option(merge join)

 

select count(*)
from @temp A ,@temp2 B
where A.a = B.a
option(hash join)

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式。 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图。         ...
  • lyjiau
  • lyjiau
  • 2014年07月30日 14:04
  • 316

表的连接方式:NESTED LOOP、HASH JOIN、SORT MERGE JOIN(修改)

表连接方式及使用场合 NESTED LOOP 嵌套循环连接        由两个for循环组成。不管什么连接,本算法都可以使用。连接的两个关系,分别称之为外层关系和内层关系,把数据块数大的关系作...

SQL优化(一) Merge Join VS. Hash Join VS. Nested Loop

本文介绍了Merge Join,Hash Join,Nested Loop这三种数据库Join方式的工作原理,并通过实验进一步说明了其适用范围。...
  • Habren
  • Habren
  • 2016年01月04日 20:24
  • 474

HASH JOIN ,MERGE JOIN ,NESTED LOOP 比较

NESTED LOOP: 对于被连接的数据子集较小的情况,嵌套循环连接是个较好的选择。在嵌套循环中,内表被外表驱动,外表返回的每一行都要在内表中检索找到与它匹配的行,因此整个查询返回的结果集不能太大...

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP .

在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式。 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图。         ...
  • lcb0913
  • lcb0913
  • 2012年06月27日 00:35
  • 267

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP【1】

在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式。 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图。            ...
  • azhegps
  • azhegps
  • 2016年12月12日 16:43
  • 143

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式。 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图。         ...
  • ffffffs
  • ffffffs
  • 2012年08月02日 15:01
  • 131

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式。 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图。       ...

多表连接的三种方式hash join,merge join,nested loop

多表之间的连接有三种方式:Nested Loops,Hash Join 和 Sort Merge Join. 下面来介绍三种不同连接的不同:     一. NESTED LOOP: 对于被连接的数据...

多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

多表之间的连接有三种方式:Nested Loops,Hash Join 和 Sort Merge Join. 下面来介绍三种不同连接的不同:     一. NESTED LOOP: 对于被连接...
  • aiaix
  • aiaix
  • 2011年10月05日 11:00
  • 237
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:{LOOP | MERGE | HASH } JOIN
举报原因:
原因补充:

(最多只允许输入30个字)