【发布时间】:2014-04-23 02:22:31
【问题描述】:
我有一张历史数据表。我需要运行一个查询,该查询只为不在历史表中的数据添加行。查询和表都具有匹配的唯一行 ID。
当我的表有 1 周前的数据时,当我运行查询时,我只想添加上周的数据。该表有超过一百万行,查询通常每天返回 20,000 行。我不知道我需要返回多少天,所以我无法将这个设置为一周的查询。
我尝试使用显示历史表中所有 ID 的子查询,并使用它通过使用“Not In(Select.....)”过滤新查询,但它需要很长时间,它基本上会崩溃。
我可以通过 ID 将表格链接到查询并仅显示历史表格中的结果,但我不知道如何显示历史表格中没有的结果。
【问题讨论】:
-
所以你已经尝试了
INSERT INTO yourTable SELECT id from yourOthertable WHERE ID not in (select id from yourTable)并且它冻结了?