首頁 >資料庫 >mysql教程 >原始 SQL 查詢如何增強 Rails 應用程式效能?

原始 SQL 查詢如何增強 Rails 應用程式效能?

Patricia Arquette
Patricia Arquette原創
2025-01-15 08:08:44427瀏覽

How Can Raw SQL Queries Enhance Rails Application Performance?

利用原生SQL優化Rails應用資料擷取效率

在Heroku等部署環境中遇到效能瓶頸時,請考慮使用原生SQL查詢來優化您的Rails應用程序,這能顯著提高速度並減少請求逾時。

讓我們來看看如何將以下Rails程式碼轉換為原生SQL查詢:

<code class="language-ruby">@payments = PaymentDetail.joins(:project).order('payment_details.created_at desc')
@payment_errors = PaymentError.joins(:project).order('payment_errors.created_at desc')

@all_payments = (@payments + @payment_errors)</code>

使用原生SQL執行此查詢,請依照下列步驟操作:

<code class="language-ruby"># 编写原生SQL查询
sql = "SELECT * FROM payment_details
JOIN projects ON payment_details.project_id = projects.id
UNION
SELECT * FROM payment_errors
JOIN projects ON payment_errors.project_id = projects.id
ORDER BY created_at DESC;"

# 直接在数据库上执行SQL查询
records_array = ActiveRecord::Base.connection.execute(sql)</code>

結果 records_array 將會是一個數組,包含SQL查詢的結果。您可以迭代這些記錄進行進一步處理。這種方法繞過了ActiveRecord ORM層,從而可能獲得顯著的效能提升。

以上是原始 SQL 查詢如何增強 Rails 應用程式效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn