你怎么用Mongoid写"(A或B)和(A或C)"查询?

Rya*_*arn 5 ruby mongoid

我需要写一个"A OR B OR(C AND D)"形式的MongoDB查询来返回一些记录.我们使用Mongoid对我们的模型进行数据访问.

我将该查询扩展为"(或或B或C)和(或或B或D)"并且希望使用类似的Mongoid的Criteria方法any_of:Model.any_of(A, B, C).any_of(A, B, D)将实现我想要的,但是扩展为"A OR B OR C"在发送到数据库之前,或"或或B或D".

有没有办法构建这个查询,或者我是否必须构建一个查询来执行A或B而另一个查询来执行C和D并获取它们的并集?

Sac*_*hag 0

检查此链接,希望它可以帮助您 -

http://mongoid.org/docs/querying/

也许如果可能的话,您可以组合“.any_in”和“.and”并查看。