我有2个相似的表:
表1
艺术家标题ISRC专辑标题
约翰·史密斯高于一切12345
克雷格·史密斯(Craig Smith)最重要的56789
兰尼·勒布朗(Lenny LeBlanc)最重要的是98765
表2
艺术家标题ISRC专辑标题文件名
约翰·史密斯首先
克雷格·史密斯(Craig Smith)首先
这没有给我我想要的结果:
Append()
尽管表2在表1中找到了一些ISRC,但表1中的ISRC不在表2中。我需要使用缺少的ISRC填充Table2。
如您所见,任何一个表都可以有具有相同标题的不同艺术家。我仅在Table2中寻找缺少ISRC的精确匹配项。
答案 0 :(得分:1)
在这种情况下,第一步是应用“ RIGHT JOIN”而不是“ INNER JOIN”。在您的查询中,它将保留来自table1的所有记录,同时尽可能地加入来自table2的记录。
但是,如果需要在两个表中都找到所有IRCS(并在可能的情况下合并在一起),则FULL JOIN是更好的选择。
答案 1 :(得分:1)
我认为您需要左加入
SELECT table2.filename,
table2.artist,
table2.title,
table1.num,
table2.album_title,
table2.record_label
FROM table2
left JOIN table1 ON table1.artist = table2.artist