2012-06-11 4 views
3

어떤 길이에 도달 할 때까지 mongo가 문서를 반환 할 수있는 방법이 있습니까? 예를 들어 나는 오디오 파일의 수집을 가지고집계 쿼리에서 Mongo

등의 컬렉션에
audio : { 
     name: string; 
     length: long; 
     releaseDate: long 
} 

나는 수익으로,이 릴리스 날짜별로 정렬되도록 목록에서 모든 오디오를 조회 할 수
200> = SUM (길이)> = 100 [목록에서 오디오 파일의 길이의 합]

+3

map-reduce로 할 수 있습니다. –

답변

7

몽고에서이 작업을 수행하는 가장 쉬운 방법은 클라이언트 측 프로그램은 수동으로 커서를 반복 있고, 조건이 완료되면 중지하는 것입니다. 다음은 mongo 셸을 사용한 예입니다.

cursor = db.audio.find().sort({ releaseDate: -1 }) 

var len = 0 
while ((len < 100) && cursor.hasNext()) { 
    record = cursor.next() 
    len += record.length 
    printjson(record) 
} 

이 정보가 도움이되기를 바랍니다.

관련 문제