SQL Server插入(如果不存在)-无主键

时间:2018-08-17 13:46:51

标签: sql-server insert exists not-exists

我有Table ATable B

Table A包含其他来源的数据。

Table B包含从Table A插入的数据以及其他表中的数据。我已经完成了从AB的数据初始插入,但是现在我要尝试的是从Table B插入Table A中不存在的记录每天不幸的是,Table A中没有主键或唯一标识符,这使这一工作变得困难。

Table A包含一个名为file_name的字段,其值如下所示: this_is_a_file_name_01011980.txt
此列中可以有重复的值(同一日期有多个文件)。

Table B中,我创建了一个列data_date,该列从table a.file_name字段中提取了日期。还有一个load_date字段,在插入数据时仅使用GETDATE()

我认为我可以以某种方式比较这些表中的日期,以确定需要插入的内容。例如: 如果来自Table A的文件日期(需要再次提取)大于load_date的{​​{1}},则将这些记录插入Table B

让我知道是否需要澄清。

1 个答案:

答案 0 :(得分:0)

您可以使用存在或除外。有了这里的解释,似乎除了会使它简短。像这样的东西。

  col1   rnorm.3.  v
1    a  0.6182781  2
2    b  0.9559001  4
3    c -0.5459661 56