活动记录 - 转换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])