From 18ddfaaaf807ab675a87dc3fbbb52643dd750bd1 Mon Sep 17 00:00:00 2001 From: Alex Basson Date: Tue, 21 Sep 2021 20:39:43 -0400 Subject: [PATCH] Optimize SurveyResponseAggregator via a join [Finishes #179425717] --- app/services/survey_response_aggregator.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/survey_response_aggregator.rb b/app/services/survey_response_aggregator.rb index 7bad7d4b..c31c2816 100644 --- a/app/services/survey_response_aggregator.rb +++ b/app/services/survey_response_aggregator.rb @@ -8,8 +8,8 @@ class SurveyResponseAggregator def self.score(academic_year:, school:, measure:) SurveyItemResponse .where(academic_year: academic_year, school: school) - .filter { |survey_item_response| survey_item_response.survey_item.measure == measure } - .map { |survey_response| survey_response.likert_score } + .joins(:survey_item).where('survey_items.measure_id': measure.id) + .map { |survey_item_response| survey_item_response.likert_score } .average end end