如何在mongoid中使用或条件进行查询

时间:2011-09-29 13:59:32

标签: ruby-on-rails ruby mongodb mongoid

如何在Mongoid中使用或条件进行查询。

3 个答案:

答案 0 :(得分:1)

以下是mongoid中“ OR ”查询的解决方案。

如果你想要查询如下

select * from user where id = 10 or name = 'hitesh';

在使用mongoid的rails中

然后你必须写这样的查询

User.any_of({id: 10},{name: 'hitesh'}).first

答案 1 :(得分:1)

这也有效:

User.or({id: 10},{name: 'hitesh'})

答案 2 :(得分:0)

@Simone Carletti是对的,但你也可以使用“mongo-style”表示法:

# Ruby 1.9+
Person.where(last_name: {"$in" => ["Penn", "Teller"]})
#Ruby 1.9-
Person.where(:las_name => {"$in" => ["Penn", "Teller"]})

或只是

Person.where(:last_name.in => ["Penn", "Teller"])

<强> UPD

两个领域的条件?

Person.where(:last_name.in => ["Penn", "Teller"], :first_name.in => ["Pedro", "Julio"])