我正在使用歌词数据库。我想知道为什么这个查询产生相同的信息:
SELECT M.LastName, A.ArtistName
FROM members M
LEFT JOIN XRefArtistsMembers X USING(MemberID)
JOIN Artists A on X.ArtistID = A.ArtistID;
和
SELECT M.LastName, A.ArtistName
FROM members M
INNER JOIN XRefArtistsMembers X USING(MemberID)
JOIN Artists A on X.ArtistID = A.ArtistID;
没有错误。我可以按要求从表中发布相关记录。
答案 0 :(得分:0)
INNER JOIN只选择两个连接表中的那些条目,其中JOIN子句中字段的值在两个表中都匹配。
LEFT JOIN选择第一个表中的所有条目,结合第二个表中的匹配条目或者如果没有匹配则使用NULL值。
如果第一个表中的每一行在JOIN子句中提到的字段的第二个表中都匹配,则INNER JOIN和LEFT JOIN都将产生相同的结果。