2013-12-17 4 views
1

casbah에서 중첩 및/또는 쿼리를 수행하려면 어떻게해야합니까?casbah의 중첩 쿼리 DSL?

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

이 샘플이 컴파일되지 않습니다,하지만 그건 내가 달성하기 위해 노력하고있어 생각 :

예를 들어

.

+0

45 개 질문이있는 3 년 사용자는 계속해서 질문에 서명해야합니다. ** ** 귀하의 모든 질문을 수정했습니다. 당신은 사이트의 도움말 섹션을 읽을 필요가 메타에 대한이 게시물은 또한 관련이 있습니다 * (제프 앳 우드 자신) * http://meta.stackexchange.com/a/93989/180280 –

답변

0

설명서에 따르면 "$ 또는 연산자는 두 개 이상의 표현식의 배열에 대해 논리 OR 연산을 수행합니다."배열은 조건을 구분하기 위해 Seq를 사용해야합니다.

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