表连接的三种方式
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)
本文介绍了三种常见的表连接方式:循环链接、排序链接和哈希链接,并详细解释了它们的时间复杂度。此外,还讨论了如何在使用表变量进行连接操作时指定不同的连接方式,以优化查询性能。

1323

被折叠的 条评论
为什么被折叠?



