处理数十万条记录

时间:2014-04-20 21:42:57

标签: sql ruby-on-rails

我有Ruby on Rails支持的应用程序。

在数据库中,我有大约50万条公司记录。 公司的每条记录都是一个月, 并有两个领域 - 价格和绩效。

用户输入值(条件) PRICE被认为是“好”, 并且PERFORMANCE的价值是“好”。

因此每条记录都可以评估为

  • “价格不好,表现不好”
  • “价格不好,表现不错”
  • “价格合理,表现不佳”或
  • “价格合理,表现良好”。

最快的方法是什么? 遍历所有记录, 并将其标记为属于四个部分之一?

结果,应用程序显示图表 - 每个段每月的计数。

1 个答案:

答案 0 :(得分:1)

在数据库中通过SQL执行它肯定比通过ActiveRecord更快。类似的东西:

UPDATE records SET type = 1 WHERE price = 'bad' AND performance = 'bad';

如果查询运行得太慢和/或您需要运行它们,请考虑在priceperformance两列上添加多列索引。