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

Mongo DB에서 문서 배열을 병합하는 방법은 무엇입니까?

<시간/>

병합하려면 $PUSH와 함께 집계()를 사용하십시오. 문서로 컬렉션을 만들자 −

> db.demo64.insertOne({"Subjects":["MySQL","MongoDB","Java"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e28762bcfb11e5c34d89936")
}
> db.demo64.insertOne({"Subjects":["Oracle","Spring","Python"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e28763fcfb11e5c34d89937")
}

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

> db.demo64.find();

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

{ "_id" : ObjectId("5e28762bcfb11e5c34d89936"), "Subjects" : [ "MySQL", "MongoDB", "Java" ] }
{ "_id" : ObjectId("5e28763fcfb11e5c34d89937"), "Subjects" : [ "Oracle", "Spring", "Python" ] }

다음은 MongoDB에서 문서 배열을 병합하는 쿼리입니다 -

> db.demo64.aggregate([
... { "$group": {
...    "_id": null,
...    "Subjects": { "$push": "$Subjects" }
... }},
... { "$project": { "_id": 0 }}
... ]);

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

{ "Subjects" : [ [ "MySQL", "MongoDB", "Java" ], [ "Oracle", "Spring", "Python" ] ] }