参加(join)和内部连接(inner join)的区别

连接与内部连接...

连接与内部连接

在这个通信驱动的世界里,我们显然需要处理data in an efficient manner as communication is all about data tran**ission. To do this, we have databases such as MS Access, SQL Server, Oracle, etc to store and retrieve our data for our day-to-day purposes. Have you ever tried a database? It is not that tough to handle a DB – even you can try it! All you need are syntaxes to manipulate or retrieve the contents of the databases. Let us explain the syntaxes ‘Join’ & ‘Inner Join’ and establish whether they differ in their functionalities or performances.

什么是“加入”数据库?

“Join”语法能够从两个或多个数据库或数据库表中检索匹配的列。数据库总是可视化为表,它们是以列和行的形式保存数据的实际单个单元。每个表都使用一个标识符键来构造,该标识符键对于每一行都是唯一的。我们所有的操作都是基于这些键-你可以通过进一步阅读来学习如何使用它们。在我们继续讨论差异之前,让我们先看看“join”的一般语法。

选择列名称

从表1

联接表2

ON Table1.Column_name=Table2.Column_name。

上面的语法从表Table1和Table2中检索指定列名的所有匹配行。您可以注意到,列名称是这两个表中的标识符键,上面的查询将比较这些列以查找匹配的行。

“内部连接”是什么?

“Inner Join”是一种SQL语法,其功能与“Join”语法相同。当您在上面的SQL查询中将“Join”替换为“Inner Join”时,您将得到相同的结果!令人震惊,对吧?那么为什么我们有两个不同的语法来执行相同的功能呢?到现在为止,你们大多数人可能都在想这个问题;你可以通过进一步阅读来了解原因。

为了更好地理解,请看下图。

您可以注意到上图中存在“innerjoin”,而且“join”没有单独的语法。这明确地证明了这两种语法是相同的,我们不需要额外的图表来描述“连接”。

为什么同一个函数有两种不同的语法

  • 为避免与其他“联接”类型混淆:

有更多的“连接”类型,如“外部连接”、“左连接”和“右连接”。这些“连接”语法在其功能上有很大的不同,我们需要具体地提到正确的语法。仅仅因为'join'和'inner join'执行相同的功能,我们在编写代码时可能会忽略'inner'这个词。有时,对于开发人员提到的“join”类型,其他开发人员之间可能会产生歧义。这是新开发人员的一个常见问题;新来者在写“join”语句时必须具体。因此,我们可以说我们有一个清晰的“innerjoin”语句,只是为了避免与其他“join”类型混淆。我们建议读者继续使用清晰的语法,而不要使用模棱两可的语法。

  • 要在不同的数据库上使用类似的语法:

SQL查询并不局限于少数数据库,我们在各种数据库中使用它们,如SQL Server、MS Access、Oracle等。如果我们考虑MS Access数据库,它永远不会接受简单的“连接”!是的,它仅在指定要在查询中使用的“join”类型时才接受它,例如“Inner join”、“Outer join”、“Left join”和“Right join”。因此,当您打算在各种数据库中使用相同或相似的语法时,您可能应该在查询中编写“innerjoin”,而不是只编写“join”!这是有区别的,即使两者都在做同样的工作。

  • 也许,一个简短的形式!

大多数人认为“连接”和“内部连接”是不一样的;令他们惊讶的是,它们在功能和性能上是相同的。我们可以说SQL将“join”视为“inner join”的缩写形式。虽然这在技术上不是一个正确的说法,但我们可以这样说以便于理解。但是,一定要通过键入“innerjoin”来执行更多的击键操作,这样可以避免我们上面讨论的其他问题。

那么使用“连接”或“内部连接”的最佳实践是什么呢?

我们建议您在计划只使用“join”的查询中使用“Inner join”。前者有道理,看起来很清楚!此外,对于程序员打算使用哪种类型的“join”,也不会有任何含糊不清的地方。此外,其他程序员也不需要您的帮助来编写文档或进行理解。现在,让我们回顾一下所有内容,并通过查看下表来了解这两种语法的区别。

序号 目标 加入 内部连接
1 语法 选择Column\u namesFROM Table1JOIN Table2ON Table1.Column\u name=Table2.Column\u name。 在Table1.Column\u name=Table2.Column\u name中选择Column\u name from Table1INNER JOIN Table2ON Table1。
2 对于开发者 仅仅“join”语句就造成了开发人员所指的“join”类型的模糊性。 在代码中使用“内部连接”是非常清楚的,它为其他开发人员形成了一个自我记录的代码。
MS访问数据库 它接受简单的“join”语句。 它接受“Inner join”语句。
4 缩写形式 这可被视为缩写形式,不能进一步缩短。 “内部连接”可以缩短为“连接”。
5 哪个更好? 尽管“join”的意思与“Inner join”相同,但一个好的开发人员应该使用清晰的语法来避免歧义。 “内部连接”更好,尽管它在性能和功能上都相当于“连接”。

 

  • 发表于 2021-06-24 03:08
  • 阅读 ( 214 )
  • 分类:IT

你可能感兴趣的文章

upgma公司(upgma)和邻接连接树(neighbor joining tree)的区别

UPGMA和邻接连接树的关键区别在于每种方法产生的系统进化树的类型。UPGMA是构建有根系统发育树的技术,邻接连接树是构建无根系统发生树的技术。 系统发育树是一种树状图,显示了生物体之间的进化关系。一个系统进化树...

  • 发布于 2020-10-15 16:37
  • 阅读 ( 917 )

内部的(inner)和外球面机构(outer sphere mechanism)的区别

...内球面机构 3. 什么是外球面机构 4. 并排比较-表格形式的内部和外部球体机构 5. 摘要 什么是内球面机构(inner sphere mechani**)? 电子转移的内球机制是通过氧化剂和还原剂反应物之间的共价键发生的氧化还原化学反应。在这里,配...

  • 发布于 2020-10-16 20:41
  • 阅读 ( 538 )

内部的(inner)和外毛细胞(outer hair cells)的区别

...密集得多,而外毛细胞的神经支配却不那么密集。此外,内部毛细胞检测声音并通过听觉神经纤维向大脑发送信号,而外部毛细胞则参与放大来自环境的声音。因此,内部毛细胞比外部毛细胞接收更多的传入输入。 内耳是耳朵...

  • 发布于 2020-10-18 02:45
  • 阅读 ( 555 )

内部联接(inner join)和自然连接(natural join)的区别

内部联接和自然联接的关键区别在于,内部联接根据查询中指定的相等条件提供匹配数据的结果,而自然联接则根据要联接的表中具有相同名称和相同数据类型的列提供结果。 DBMS允许轻松地存储、检索和操作数据。它以表格...

  • 发布于 2020-10-18 12:15
  • 阅读 ( 1698 )

所有程序员都应该知道的13条最重要的sql命令

... 4参加 ...

  • 发布于 2021-03-14 06:57
  • 阅读 ( 217 )

如何使用sql连接一次查询多个数据库表

... 默认/内部联接 ...

  • 发布于 2021-03-27 04:02
  • 阅读 ( 292 )

如何在linux上使用join命令

...Capital District $674,634.93 我们键入以下命令以尝试将file-3.txt连接到file-1.txt: join file-1.txt file-3.txt join报告文件-3.txt中的第七行出现故障,因此未对其进行处理。第七行是以数字6开头的,在正确排序的列表中,数字6应该在8之前。...

  • 发布于 2021-04-02 15:30
  • 阅读 ( 142 )

如何连接google工作表中多个单元格的数据

...的显示方式,可以改用CONCATENATE。 如何使用concatenate函数 连接函数比CONCAT更复杂。它为那些希望以不同格式组合单元格数据的人提供了更大的灵活性。例如,CONCAT不允许添加额外的文本或空格,但是CONCATENATE允许。 要使用CONCATENA...

  • 发布于 2021-04-02 19:55
  • 阅读 ( 239 )

焊接(soldering)和钎焊(brazing)的区别

...erence soldering) vs. 钎焊(brazing) 钎焊和硬钎焊都是一种金属连接工艺,在这种工艺中,将填充材料熔化并应用于金属物体之间的连接处,使它们结合在一起,而不必将物体加热到熔点。然而,这两个金属零件在焊接过程中没有熔化...

  • 发布于 2021-06-27 09:25
  • 阅读 ( 587 )

内部的(inner)和外行星(outer planets)的区别

内部的(inner)和外行星(outer planets)的区别 太阳系是一个由八颗行星、卫星、小行星和其他围绕太阳运行的天体组成的系统。在我们的太阳系之外,已经发现了数千颗围绕其宿主恒星运行的系外行星。一些宿主恒星可能有几十颗行...

  • 发布于 2021-06-27 20:02
  • 阅读 ( 352 )
willawee
willawee

0 篇文章

相关推荐