mongodb 쿼리 문에서 쿼리 결과를 병합하는 방법은 무엇입니까?
迷茫
迷茫 2017-05-02 09:22:41
0
1
620

하나의 문을 사용하여 현재 레코드, 이전 레코드, 다음 레코드를 포함한 세 개의 레코드를 쿼리하고 싶습니다. 어떻게 해야 합니까?
현재 레코드의 _id만 알 수 있으며 인접한 레코드는 다른 시간 필드로 정렬해야 합니다.

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

모든 응답(1)
PHPzhong

간단한 문장을 사용하는 것은 어렵습니다. 적어도 제 범위는 현실적이지 않습니다.
몇 가지 아이디어를 제공할 수 있습니다.

  1. db.coll.find({},{"데이터를 한 열만 표시하거나 몇 개 열만 표시하는 것이 좋습니다. 데이터 양이 많으면 사용하기 어려울 수 있습니다. 나중에 정렬 작업이 필요합니다."}) $natual:1을 정렬한 후 커서에 할당한 다음 forEach()에서 두 개의 변수를 사용하여 일치 조건이 될 때까지 현재 데이터 조각과 이전 데이터 조각을 저장합니다. 성공하면 이전과 이후의 세 가지 데이터 조각과 현재 데이터 조각이 반환될 수 있습니다.
    더 강력한 내부 방법이 있을 수 있습니다. 포럼에 오신 것을 환영합니다.

  2. 또 다른 방법은 $natual:1의 데이터를 기반으로 순서가 지정된 숫자 또는 문자 열을 주기적으로 추가한 다음 이를 다른 새 테이블에 저장한 다음 새 테이블의 ID를 기반으로 새 테이블을 쿼리하는 것입니다. 검색된 컬럼 KEY: value를 통해 일치하는 데이터가 순서대로 추가됩니다. 이전과 이후의 데이터가 다시 쿼리됩니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿