我想获得一个与datamapper中指定ID匹配的对象列表。
我知道我可以使用多个“或”条件,但id的列表可以是数百个。
是否有datamapper命令等同于以下sql?
select * from table where id in (1,2,3,4,5)
答案 0 :(得分:10)
你可以!它看起来像这样:
users = User.all(:id => [1,2,3])
编辑:你可以在github page for dm-core:
上看到这一点 # If the value of a pair is an Array, we do an IN-clause for you.
Person.all(:name.like => 'S%', :id => [ 1, 2, 3, 4, 5 ])
# Does a NOT IN () clause for you.
Person.all(:name.not => [ 'bob', 'rick', 'steve' ])