首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL数据库中大量记录的更新

MySQL数据库中大量记录的更新
EN

Stack Overflow用户
提问于 2011-07-03 13:51:45
回答 2查看 487关注 0票数 0

我正在考虑一种最有效的方法,如何下载和更新项目到我的数据库(MySQL)中。我正在处理数以万计到数百件物品。

我有一个表(table_a),它包含项。每天晚上我都在下载新的数据,这些数据存储在table_b中。所以,现在是午夜了,我将把数据下载到table_b,在下载完所有数据之后,我将开始比较table_btable_a之间的数据。如果table_b中的项存在于table_a中,则由table_btable_a中编辑3-4个数字值。如果此项目不在table_a中,则此项目将保存到table_a中。

通过这种方式,我每天只更新表table_a中的项目一次。这个方法的问题-这个过程很慢.对于大约20.000件物品,大约需要25-30分钟。(我的应用程序正在RoR上运行)

我想问你-你能帮我,请,更好,特别是更快的方式更新新的记录到表(table_a)?我会非常感激的..。提前谢谢你,M。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-03 15:01:07

如果所有必需的数据都在数据库中可用,逻辑就不会极其复杂或经常发生更改,而且性能也是一个问题,将逻辑迁移到单个SQL语句是您最明显的选择之一。

与此类似的东西:

插入到table_a选择*从table_b上重复键更新value1=table_b.value1,value2=table_b.value2,.;

票数 2
EN

Stack Overflow用户

发布于 2011-07-03 14:00:19

有两项建议:

  1. 索引:这些应该使查找速度更快。
  2. 散列:如果要比较长字符串,最好先创建散列,然后将它们存储在数据库中并比较它们的散列。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6563263

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档