2016-06-25 2 views
0

MongoDB Java 드라이버를 사용하여 배열 필드에 적어도 2 개의 항목이 들어있는 모든 항목을 찾고 싶습니다. 내가 시도한 것 :MongoDB Java 검색 배열 크기

myCollection.find(new Document("arrayFieldname.length", new Document("$gt", 1))); 

불행히도 이것은 어떤 항목도 반환하지 않습니다.

접근 방식이 달라야합니까?

많은 감사, 톰

답변

2

사용 $size operator을 할 수 있지만, 그 범위 작동하지 않습니다.

가장 좋은 방법은 배열 크기를 추적하는 문서에 필드를 추가하고이를 기반으로 쿼리하는 것입니다. 이 접근 방식의 보너스는 해당 필드에 대해 색인을 생성 할 수 있다는 것입니다.