0

如果表中的值不在通过 XML API 传入的非常大的集合(20,000 项)中,我的应用程序需要更改它。显然,很容易创建一个非常慢的解决方案。

我想知道你会如何推荐这样做?我正在考虑将 XML 中项目的唯一 ID 添加到临时表中,然后执行单个查询:

UPDATE item SET status = "deleted" WHERE id NOT IN (SELECT id FROM keep_items);

你怎么看?

4

1 回答 1

1

我最终使用了我提出的解决方案,即在读取数据时创建并填充一个临时表,然后运行:

DELETE FROM item WHERE item.id NOT IN (SELECT temp_item.id FROM temp_item);

结果非常快。

于 2012-11-13T01:10:37.233 回答