我正在尝试用相等数量的列联接2个表,并且每个列的名称都相同。 Tb1
是我已导入到SQL Server的MS Access表。 Tb2
是一个从tb1每季度更新一次的表,用于生成报告。
我进入设计视图,并确保所有列数据类型都相同并且具有相同的名称。同样,每个表中的每一行在名为PKEY
的列中分配一个唯一的整数值。
我想做的是将tb1
(MS Access表)中存在的所有新条目添加到现有的tb2
中。我相信可以通过编写查询来加载在tb1
中找到的所有唯一pkey(AKA加载在两个表中都找到的NOT的所有键,仅加载属于访问表中的行的唯一键)的查询来完成此操作然后将这些条目附加到Tb2
中。
不确定写此查询时从哪里开始,我尝试过类似的操作:
SELECT *
FROM tb1
WHERE PKEY <> Tb2.PKEY
任何帮助将不胜感激。谢谢!
我建议not exists
:
select tb1.*
from tb1
where not exists (select 1 from tb2 where tb2.pkey = tb1.pkey);
您可以在其前面放置insert
以将行插入第二张表。