On 7/3/2014 4:01 AM, Arup Rakshit wrote:
Exactly.. I am done. Here is the ORM query :-def self.employee_learning_by_gender(question_id) cpd_id = Measure.find_by(option: 'CPD').id other_id = Measure.find_by(option: 'Others').idUser.select("view.gender, sum(view.participant) as participant, sum(cpd) as cpd, sum(other) as other").from(User.joins(daily_action_answers: [:measure]).group("users.gender, daily_action_answers.measure_id").where("((daily_action_answers.day between ? and ?) and daily_action_answers.daily_action_id = ?)", Date.today, Date.today.end_of_year, question_id ) .select("users.gender, count(*) as participant,case when daily_action_answers.measure_id = #{cpd_id} then avg(daily_action_answers.value) end as cpd, case when daily_action_answers.measure_id = #{other_id} then avg(daily_action_answers.value) end as other"), :view).group("view.gender") end
OT, but it boggles my mind that anyone thinks thats 'better' than the straight SQL
-- john r pierce 37N 122W somewhere on the middle of the left coast -- Sent via pgsql-general mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
