簡體   English   中英

Rails排序或排序查詢很慢

[英]Rails sorting or ordering query is slow

使用Rails 3.2,Ruby 1.9和will_paginate。 我有100,000條記錄,並測試了以下查詢:

# 1000+ms to load
@shops = Shop.where(:shop_type => @type).paginate(:include => :photos, :page => params[:page], :per_page => 25, :order => 'created_at DESC')

# 1000+ms to load
@shops = Shop.paginate(:include => :photos, :page => params[:page], :per_page => 25, :order => 'created_at DESC')

# 1000+ms to load
@shops = Shop.order('created_at DESC').limit(25)

# 1+ms to load
@shops = Shop.paginate(:include => :photos, :page => params[:page], :per_page => 25)

我注意到order選項的速度非常慢。 測試結果表明will_paginate不是問題。

我應該如何更改它order可以加快查詢order

是的,嘗試在訂單列上創建索引。 它將加快速度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM