嵌套查询DSL在casbah?

时间:2013-12-17 16:33:48

标签: mongodb casbah

如何在casbah中执行嵌套和/或查询?

例如:

val q =  $and( "a"->"b", $or("e"->"f", "e"->"g"), $or("c"->"d", "c"->"e") )

此示例无法编译,但这是我想要实现的想法。

1 个答案:

答案 0 :(得分:0)

文档说:“$或运算符对两个或多个表达式的数组执行逻辑OR运算”,因为它是数组,您应该使用Seq来分隔条件。

coll.find(MongoDBObject("a"->"b","$or"->Seq(Map("e"->"f"),Map( "e"->"g")),"$or"->Seq(Map("c"->"d"),Map( "c"->"e"))))