2012-08-17 41 views
0

在Rails中查找對象時,首先組合查詢條件然後執行查詢或從較不嚴格的條件開始,然後對結果執行數組操作以縮小我想要的範圍。我想知道哪一個會更快地執行和/或標準使用。Rails查詢與數組操作

回答

1

如果可能,縮小SQL中的結果速度通常更快,因此如果查詢不太複雜,可以根據需要添加儘可能多的查詢條件。在Ruby中運行代碼以縮小結果的速度並不比SQL快,因爲無論如何Ruby都被解釋了。

然而,縮小了與SQL的好處結果自:

  • 通過索引搜索的結果是更快,如果在其上建立索引的列的查詢條件(例如添加索引CREATED_BY,然後查找在特定時間範圍內創建的結果)或該列上的排序子句
  • 從SQL數據庫到Ruby/Rails的通信量較少(如果在同一臺計算機上,則速度稍有提高,否則數據庫位於獨立的計算機,使用更少的帶寬 - 結果返回更快)
+0

這就是我的想法,謝謝你好先生 – pandapirate 2012-08-17 03:30:56