2012-09-21 5 views
0

이것은 $and query returns no result과 비슷한 질문이지만이 경우에는 해당 답변이 적용되지 않습니다.

나는 다음과 같은 쿼리를 가지고 :

{ 
    $and: [ 
    { 
     ownerId: "505b832c975a5c3ca6e9523b" 
    }, 
    { 
     privacyLevel: "Public" 
    } 
    ] 
} 

내 컬렉션 "공개"하고 7 위의 ownerId이 모두 16 개 개의 문서가 있습니다. 하위 쿼리는 올바르게 작동하고 올바른 문서를 반환하므로이 쿼리의 결과는 7 개입니다.

$ 및 쿼리가 아무 것도 반환하지 않는 이유는 무엇입니까?

+0

Mongodb 버전? 또한 실행중인 전체 쿼리 또는 문제의 원인이되는 일부만? – Sammaye

+0

Mongodb 2.0 (Jelastic에서 실행 중이며 패치 버전 번호를 찾지 못해서 자세한 내용이 없습니다.) 예, 전체 쿼리입니다. – Tim

+0

서버를 구성하는 것은 2.0이지만, 구문에는 아무런 문제가 없습니다. 문자열 형식의 objectid를 사용하지만 별거 아닌 다른 것을 – Sammaye

답변

0

두 필드를 쿼리하는 경우 $ 및 연산자가 필요하지 않습니다. 검색어는 다음과 같습니다 :

.find({ownerId: "505b832c975a5c3ca6e9523b", privacyLevel: "Public"}) 
+0

그게 작동하지만 Datanucleus를 사용하여 쿼리를 작성했기 때문에 "$ and"를 제거 할 수 없다고 생각합니다. – Tim

+0

DB 인터페이스에 JDO 또는 JPA를 사용하고 있습니까? – shelman

+0

제 인터페이스에 JDO를 사용하고 있습니다. – Tim

관련 문제