Sql 仅从一个表选择/插入新输入的数据到另一个表
为我确定的一个简单问题提前道歉: 我试图组合一个查询,每晚将新信息从一个表拉到另一个表,但我似乎无法确定自上次插入以来仅选择和插入新数据的逻辑。我目前的问题是:Sql 仅从一个表选择/插入新输入的数据到另一个表,sql,select,insert,logic,Sql,Select,Insert,Logic,为我确定的一个简单问题提前道歉: 我试图组合一个查询,每晚将新信息从一个表拉到另一个表,但我似乎无法确定自上次插入以来仅选择和插入新数据的逻辑。我目前的问题是: insert into dbo.calculationtable (ID, Server, Datetime, UptimeStatus) Select ID, SERVER, CheckTime, ResultType From dbo.sample GO 它与查询其余部分中的一些其他逻辑一起输出我要查找的信息,问题是当它再次运行时
insert into dbo.calculationtable (ID, Server, Datetime, UptimeStatus)
Select ID, SERVER, CheckTime, ResultType
From dbo.sample
GO
它与查询其余部分中的一些其他逻辑一起输出我要查找的信息,问题是当它再次运行时,它包括所有以前的数据以及任何新条目(因此会复制它)。如何让它忽略这些列?这实际上取决于您的数据以及每列的含义。 假设
dbo.sample.CheckTime
是一列,设置为插入记录时的当前时间,那么您可以执行以下操作:
insert into dbo.calculationtable (ID, Server, Datetime, UptimeStatus)
Select ID, SERVER, CheckTime, ResultType
From dbo.sample
Where CheckTime > (Select max(DateTime) From dbo.calculationtable)
GO
似乎您需要在表中添加“DateAdded”字段或其他内容。然后你可以在ID上留下连接,只在DateAdded为空的地方拉。感觉很简单,看起来这样做了,谢谢!