【发布时间】:2013-04-28 18:25:32
【问题描述】:
我正在尝试对包含 500k 行的模型中的记录进行排序。当我最初尝试此过程时,我只有 200 条记录,并使用以下代码并提取了 1-5 条记录以列出最受欢迎的记录:
@mostpopular = Product.find(:all, :order => 'click_count DESC')
但是,现在我有一个更大的数据集,这会使我的计算机停止运行,我希望尝试以更有效的方式完成搜索。
我已尝试将代码调整为@mostpopular = Product.order('click_count DESC').limit(10),但这仍然需要很长时间才能完成...
有没有更有效的方法从大型数据集中提取前 10 条最受欢迎的记录?
感谢您的宝贵时间
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 sqlite activerecord database-performance