{LOOP | MERGE | HASH } JOIN

表连接的三种方式
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)

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭