gpt4 book ai didi

ruby - 关于链接多个 any_of 标准的问题#Mongoid

转载 作者:IT老高 更新时间:2023-10-28 13:10:30 26 4
gpt4 key购买 nike

我有一个需要运行 MongoDB 查询的要求,如下所示:

db.collection.find({ $or : [{"field1" : "value1"}, {"field2" : "value2"}], $or : [{"field3" : "value3"}, {"field4" : "value4"}]}) 

(field1 == value 1 or field2 == value2) and (field3 == value3 or field4 == value4) 

我想通过条件链接来实现这一点,因为查询已形成动态地从代码的不同部分。但是,如果我尝试执行以下操作

criteria = Collection.any_of({"field1" => "value1"}, {"field2" => "value2"})criteria = criteria.any_of({"field3" => "value3"}, {"field4" => "value4"}) 

我得到了结果查询,其中所有这些都组合成一个 $or像

这样的语句
db.collection.find({ $or : [{"field1" : "value1"}, {"field2" : "value2"}, {"field3" : "value3"}, {"field4" : "value4"}]}) 

使用标准链实现两个“any_of”的“and”的方法是什么?

最佳答案

你可以通过避免 any_of 来做到这一点。

criteria = Collection.where('$or' => [{"field1" => "value1"}, {"field2" => "value2"}])
criteria = criteria.where('$or' => [{"field3" => "value3"}, {"field4" => "value4"}])

关于ruby - 关于链接多个 any_of 标准的问题#Mongoid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4733778/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com