我有一个查询,可以按特定顺序获取人员的ID,比如:
然后我想在Person.find(ids)
之前把这些人找回来
但它们总是以数字顺序获取,我通过执行以下操作来了解这一点:
people = Person.find(ids).map(&:id)
=> [1, 2, 3, 5, 6, 9]
如何运行此查询,使顺序与ids数组的顺序相同?
我让这项任务变得更加困难,因为我只想执行一次查询,从给定的ID中提取人员.因此,执行多个查询是不可能的.
我试过这样的方法:
ids.each do |i|
person = people.where('id = ?', i)
但我认为这不管用.