2017-07-02 17 views
-1

在轨5,我得到了属性的数组:Rails的最快的方法做几次查询

array_of_attribute = ["a","b","c","a","c"] 

我想找到相应的对象表中的

objets = Objet.where({"attribute_column": array_of_attribute}) 

但在“OBJETS”, “a”和“c”只有一次。

我可以这样做:

objets = array_of_attribute.map{|aoa| Objet.where({"attribute_column": aoa}) } 

但其执行N次查询,我怕在这种情况下进行。

执行此查询的最快方法是什么?

它是执行这种查询并获取每个对象数量的快速方法吗?

+0

*“a”和“c”只是一次*你的意思是排除重复? – Pavan

回答

1

既然您说“'a'和'c'只有一次”,您可以使用uniq删除重复项。所以你可以改变你的命令为 objets = Objet.where({"attribute_column": array_of_attribute.uniq})