活动记录 - 转换SQL查询

问题描述:

我无法将SQL查询转换为ActiveRecord,我希望你能帮忙。活动记录 - 转换SQL查询

select tbl2.id 
     from Table1 tbl1 
       JOIN Table2 tbl2 ON tbl1.id = tbl2.some_column_id 
     where tbl1.id in (1, 2, 3, 4, 5) 
       and tbl2.id not in (10, 13, 22, 44, 66) 

Rails模型存在,并且关系是这样的:

表2:

has_many :table1 

以为你设置适当的表名的类(表1和表2是不是轨机型好名字,顺便说一句)。

然后

Table2 
    .select(:id).joins(:table1) 
    .where(table1: { id: [1, 2, 3, 4, 5] } 
    .where.not(id: [10, 13, 22, 44, 66])