JOINS和SUBQUERIES之间有什么区别?可以用JOIN做的事情是否也可以用SUBQUERIES完成,反之亦然?

14 浏览
0 Comments

JOINS和SUBQUERIES之间有什么区别?可以用JOIN做的事情是否也可以用SUBQUERIES完成,反之亦然?

此问题已有答案:

可能是重复的问题:

SQL:Join vs. subquery

我们是否可以通过连接来做些什么,而用子查询则不能做,或者反之亦然?

admin 更改状态以发布 2023年5月21日
0
0 Comments

坦白地说,我无法想到一种情况,其中一个方法(子查询或连接)不能实现一件事情。对我来说,更多的是关于可读性和性能。例如,子查询可能会更慢,而连接可能会利用某些索引。至少从DBMS的角度来看,我想,分析表达式时应该更容易优化连接。考虑表示为子查询的多个连接的情况,例如。对于大多数人来说,以LeftRightInner连接表示的语句会更容易理解和维护。我甚至避免使用隐式连接,因为它们隐藏了意图。换句话说,我更喜欢将连接表示为from table a inner join table b on a.id=b.id,而不是from table a, table b where a.id=b.id。在实现连接作为子查询时,可读性甚至更差,我的意见。

0
0 Comments

对于企业应用程序而言,问题不仅仅是可以做什么,更是如何做。一般来说,连接比子查询更快、更便宜。关于这个主题,Stack Overflow 上有大量的帖子。这里是其中之一:连接 vs. 子查询

0