Q
外部连接性能
4
A
回答
6
一个inner join
将消除行,而outer join
不会。这导致需要处理更多的行。
看看this article,它可以直观地描述连接。请注意,inner join
与左侧和完整outer join
的结果集相差多少。这些照片并不代表每种情况,但它们会让您知道发生了什么。
1
外连接通常会为您提供更多的结果(A*B
而不是WHERE A=B
)。这需要更多时间。
1
一般来说,这是因为数据库引擎必须执行更多的比较操作来缩小结果集。
1
用真实数据进行测试。 这可能是,除非外连接引入额外的行,性能是相同的。
2
我有性能问题,即时我的网站,发现查询用7秒钟完成
在此查询中的所有列均数和被索引(SQL Server 2008 R2中)
这全外加入的是3个表格,每个表格有150,350和270行。
我简单地更换了FULL OUTER JOIN为LEFT JOIN和执行时间减少为0秒(毫秒)
我只是用几行 然后测试之前,如果表有成千上万的记录,表现一个完整的外连接将不太好。
1
有些时候,连接执行速度比内部连接快。这将取决于应该加入的2个结果集
相关问题
- 1. 外部连接坏SQLite查询性能
- 2. MySQL外部左连接性能
- 3. 服务器性能:多个外部连接和性能
- 4. Oracle外连接 - 性能
- 5. 数据库性能 - 数据库功能的左外部连接
- 6. UDP打孔不能连接外部
- 7. SQL外部连接?
- 8. netezza左外连接查询性能
- 9. SQL内部连接性能建议
- 10. 内部连接,并外部联接
- 11. SQL连接性能
- 12. android:TCP连接性能
- 13. 连接外部标签
- 14. 左外部连接问题
- 15. Oracle SQL左外部连接
- 16. Linq左外部连接C#
- 17. 连接到外部API
- 18. 连接Node.JS和Socket.IO外部
- 19. Linq To Objects外部连接
- 20. Oracle和左外部连接
- 21. socket.io:Bad Request,从外部连接
- 22. 左外部连接3表
- 23. 左外部连接sql 2012
- 24. 这是左连接还是右连接,内部还是外部?
- 25. 提供内部连接结果的外部连接
- 26. 内部连接和常规表格的外部左连接
- 27. MySQL左外部连接或内部连接
- 28. 为什么'x'有内部连接而不是外部连接?
- 29. 比较内部连接和外部连接SQL语句
- 30. SQL Server速度:左外部连接vs内部连接
外连接通常不会给您乘以B作为结果数,因为它不是联合。它会给你A或B中的记录数量作为结果,这取决于哪一个是这两者中的主要选择。外连接仅意味着当连接表中没有对应的记录时,您需要主选定表上的所有记录和连接表的列中的空值。只有在您可以执行“完整”外连接时才会发生A * B:将左外连接和右外连接组合在一起。 – 2010-08-12 14:22:16
@Marjan,如果它是'FULL OUTER JOIN'呢? – 2010-08-12 14:24:45
@Abe:我刚刚意识到这一点并编辑了我的评论......(无法删除它们......) – 2010-08-12 14:25:55