2012-03-08 57 views

回答

4

第一个查询是一个隐含INNER JOIN,你应该总是使用显式语法。在这种情况下,查询将返回table1和table2中的记录。第二个查询将返回两个表的所有记录,如果另一个没有匹配,则显示NULL

+0

+1对于我在前面滑动,几乎完全一样的东西,我正在打字。 – 2012-03-08 19:01:19

+0

对,我必须真的很累你是正确的完全联合会给我那些额外的空结果,但是你说这是一个隐式的内部联接,所以如果我在第二个查询中使用内联接在我的例子中它将是相同但不推荐? – user519753 2012-03-08 19:04:06

+0

它应该是相同的,**推荐使用'INNER JOIN'。 – 2012-03-08 19:05:26

0

FULL JOIN关键字返回table1的所有行,以及table2的所有行。如果table1中的某些行在table2中没有匹配项,或者table2中的某些行中的行没有table1中的匹配项,那么这些行也会列出,并填写nulls

第一个查询只会返回结果,其中table1table2primaryId)匹配。这相当于一个INNER JOIN

相关问题