0

我是 RoR 的新手,在编写我的 sql 查询时遇到了很多问题。我尝试在没有(或只有几个)sql 的情况下完成它们。

这是我要编写的查询。

select AVG(results.value)as 'avg', form_rows.id, form_rows.domtype 
from form_rows
join results on results.form_row_id = form_rows.id 
where form_rows.form_id = '9' and form_rows.domtype IN ('numfield', 'percentagefield')
group by results.form_row_id

请注意,在第一个 where 条件 (form_rows.form_id = '9') 中,该值作为参数发送。

如果有人可以帮助我:)

4

1 回答 1

1

我假设你有一个 FormRow 和结果模型

FormRow.joins(:results).where(:form_id => params[:form_id])
.where("form_rows.domtype IN(?)", ['numfield', 'percentagefield'])
.group("results.form_row_id")
.select("AVG(results.value) as 'avg', form_rows.id, form_rows.domtype")

我没有测试它,但应该是它

顺便说一句:如果您在选择中使用它,也应该按 form_rows.domtype 分组。

于 2013-03-13T16:16:02.610 回答