首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >外部连接性能

外部连接性能
EN

Stack Overflow用户
提问于 2010-08-12 22:07:25
回答 6查看 14K关注 0票数 5

为什么外连接通常比内连接慢?我的意思是,独立于数据库供应商。我认为这是一个实现或使用的访问计划的问题,但我无法说服我的同事,他认为性能应该是相同的。

提前谢谢你,Lluis

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-08-12 22:20:37

inner join会消除行,而outer join不会,这会导致更多的行需要处理。

看一下可视化地描述连接的this article。请注意,与左侧和完整的outer join相比,inner join的结果集要小得多。这些图片并不代表每个场景,但它们可以让您对正在发生的事情有所了解。

票数 7
EN

Stack Overflow用户

发布于 2016-07-30 08:41:57

我在我的网站上遇到了性能问题,发现一个查询需要7秒才能完成。

此查询中的所有列都是数字并已编制索引(SQL Server2008 R2)

这个完整的外连接是在3个表之间,每个表有(150,350和270)千行。

我简单地将完整的外部连接替换为左连接,执行时间减少到0秒(毫秒)。

在我用几行代码进行测试之前,如果表有数千或数百万条记录,那么完整的外连接的性能将不会很好。

票数 2
EN

Stack Overflow用户

发布于 2010-08-12 22:14:09

通常,这是因为db引擎必须执行更多的比较操作来缩小结果集的范围。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3468547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档