집 >데이터 베이스 >MySQL 튜토리얼 >Rails 애플리케이션의 성능 향상을 위해 언제 원시 SQL을 사용해야 합니까?
원시 SQL 쿼리로 Rails 성능 향상
상당한 데이터세트가 포함된 복잡한 쿼리의 경우 원시 SQL을 사용하면 특히 요청 시간 초과가 잠재적인 문제가 될 수 있는 Heroku와 같은 플랫폼에서 성능을 크게 향상시킬 수 있습니다. 원시 SQL을 Rails 애플리케이션에 통합하는 방법은 다음과 같습니다.
<code class="language-ruby">sql = "SELECT * FROM payment_details AS pd JOIN projects AS p ON pd.project_id = p.id UNION ALL SELECT * FROM payment_errors AS pe JOIN projects AS p ON pe.project_id = p.id ORDER BY pd.created_at DESC, pe.created_at DESC" records_array = ActiveRecord::Base.connection.execute(sql)</code>
이 코드 조각은 다음을 보여줍니다.
sql
테이블과 결합된 UNION ALL
및 payment_details
테이블의 데이터를 병합하기 위해 payment_errors
을 사용하는 원시 SQL 쿼리(projects
).ActiveRecord::Base.connection.execute(sql)
은 쿼리를 실행하고 결과를 records_array
에 저장된 배열로 반환합니다.records_array
반복을 통해 개별 기록에 접근할 수 있습니다.이 방법은 데이터베이스 상호 작용을 보다 세밀하게 제어할 수 있으므로 잠재적으로 쿼리 실행 속도가 빨라지고 애플리케이션 성능이 향상됩니다.
위 내용은 Rails 애플리케이션의 성능 향상을 위해 언제 원시 SQL을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!