Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

_id가 하위 문서의 일부로 배열에 있는 문서와 일치하는 MongoDB 쿼리?


문서로 컬렉션을 만들자 −

> db.demo568.insertOne({ _id:101, 세부정보:[ {id :101 }, { id:103 } ] });{ "승인됨" :true, "insertedId" :101 }

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo568.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :101, "details" :[ { "id" :101 }, { "id" :103 } ] }다음은 두 번째 컬렉션 생성 쿼리입니다.> db.demo569.insertOne({ _id :101, details:"John" }){ "acknowledged" :true, "insertedId" :101 }> db.demo569.insertOne({ _id:102, details:"Chris" }){ "acknowledged" :true, " insertId" :102 }> db.demo569.insertOne({ _id:103, 세부정보:"David" }){ "승인됨" :true, "insertedId" :103 }

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo569.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :101, "details" :"John" }{ "_id" :102, "details" :"Chris" }{ "_id" :103, "details" :"David" } 

다음은 _id가 하위 문서의 일부로 배열에 있는 문서를 일치시키는 쿼리입니다 -

> db.demo569.find({ '_id':{ '$in':db.demo568.distinct('details.id', {'_id':101}) }})

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :101, "details" :"John" }{ "_id" :103, "details" :"David" }