我正在考虑一种最有效的方法,如何下载和更新项目到我的数据库(MySQL)中。我正在处理数以万计到数百件物品。
我有一个表(table_a),它包含项。每天晚上我都在下载新的数据,这些数据存储在table_b中。所以,现在是午夜了,我将把数据下载到table_b,在下载完所有数据之后,我将开始比较table_b和table_a之间的数据。如果table_b中的项存在于table_a中,则由table_b在table_a中编辑3-4个数字值。如果此项目不在table_a中,则此项目将保存到table_a中。
通过这种方式,我每天只更新表table_a中的项目一次。这个方法的问题-这个过程很慢.对于大约20.000件物品,大约需要25-30分钟。(我的应用程序正在RoR上运行)
我想问你-你能帮我,请,更好,特别是更快的方式更新新的记录到表(table_a)?我会非常感激的..。提前谢谢你,M。
发布于 2011-07-03 15:01:07
如果所有必需的数据都在数据库中可用,逻辑就不会极其复杂或经常发生更改,而且性能也是一个问题,将逻辑迁移到单个SQL语句是您最明显的选择之一。
与此类似的东西:
插入到table_a选择*从table_b上重复键更新value1=table_b.value1,value2=table_b.value2,.;
发布于 2011-07-03 14:00:19
有两项建议:
https://stackoverflow.com/questions/6563263
复制相似问题