2014-11-15 4 views
0

두 개의 다른 MongoDB 컬렉션 (동일한 DB)의 필드를 비교하는 쿼리를 작성하려고합니다. 특히, 나는 시간의 일부와 일치하는 필드를 각각 포함하는 두 개의 콜렉션을 가지고있다. 따라서 각 컬렉션의 각 행을 반복하여 비교하는 것이 좋습니다. 일치하는 항목이 발견되면 후속 작업 (컬렉션 중 하나에 세 번째 필드의 값 삽입)을 수행 할 수 있기를 원합니다. 이 비교 쿼리의 구문 제안은 매우 유용합니다.다른 MongoDB 컬렉션의 두 필드를 비교하는 방법

감사합니다.

답변

0

$를 사용할 수 있습니다. 가능한 한 색인 된 쿼리와 결합하면 상당히 느릴 것입니다 ( 모든 레코드에 Javascript 코드를 실행해야 함).

db.T.find({ $where: function() { return this.Grade1 > this.Grade2 } }); 

이상의 소형

:

db.T.find({ $where : "this.Grade1 > this.Grade2" }); 
+0

이 여전히 같은 수집의 데이터를 비교하는 것입니다. –

+0

예, 이것은 잘못된 답변입니다. 각 컬렉션에 대해 루프를 만드는 방법은 무엇입니까? – Pille

관련 문제