Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Mysql代码转换为rails活动记录查询_Mysql_Ruby On Rails_Activerecord_Ruby On Rails 3.2 - Fatal编程技术网

将Mysql代码转换为rails活动记录查询

将Mysql代码转换为rails活动记录查询,mysql,ruby-on-rails,activerecord,ruby-on-rails-3.2,Mysql,Ruby On Rails,Activerecord,Ruby On Rails 3.2,需要帮助将下面的mysql查询转换为活动记录查询 SELECT ad_trek_participant.id, ad_registration_data.id, ad_registration_data.email, ad_registration_data.first_name,ad_registration_data.last_name, ad_trek_participant.status, ad_trek_participant.payment_status, COUNT( *

需要帮助将下面的mysql查询转换为活动记录查询

    SELECT ad_trek_participant.id, ad_registration_data.id, ad_registration_data.email, ad_registration_data.first_name,ad_registration_data.last_name, ad_trek_participant.status, ad_trek_participant.payment_status, COUNT( * ) AS occurrences
FROM ad_trek_participant
INNER JOIN ad_registration_data ON ad_trek_participant.Registration_Data_Id = ad_registration_data.id
WHERE ad_trek_participant.status = '2'
AND ad_trek_participant.payment_status = '2'
GROUP BY ad_trek_participant.Email_Id
HAVING COUNT( * ) >=5
LIMIT 0 , 1000
模型之间的关系是
有一个
属于

ad\u注册数据
有一个:参与,外键:“注册数据id”

ad\u trek\u参与者

属于:注册数据,外键:“注册数据\u Id”
下面的查询对我很有用

@participations = Participation.joins(:registration_data)
.where(payment_status:2,status:2)
.group("ad_registration_data.email")
.having("count(ad_registration_data.email)>=5")
.count('ad_registration_data.email')

是的,这是一个疑问。转换它取决于你的模型是如何构建的,以及这些关系是否得到了正确的表达(例如,
有许多
等等)。@tadman更新了问题,请现在检查