행을 다른 컬렉션으로 복사하려면 MongoDB를 사용하십시오. 구문은 다음과 같습니다. 여기서 "yourOldCollectionName"은 이전 컬렉션이고 이 컬렉션이 복사되는 위치는 "yourNewCollectionName" -
과 같은 새 컬렉션입니다.db.yourOldCollectionName.aggregate([{ $sample: { size: 333333 }}, {$out: "yourNewCollectionName"} ],{allowDiskUse: true});
먼저 문서로 컬렉션을 생성해 보겠습니다. −
> db.sourceCollection.insertOne({"EmployeeName":"Robert","EmployeeSalary":15000}); { "acknowledged" : true, "insertedId" : ObjectId("5e0397c1f5e889d7a5199506") } > db.sourceCollection.insertOne({"EmployeeName":"David","EmployeeSalary":25000}); { "acknowledged" : true, "insertedId" : ObjectId("5e0397c3f5e889d7a5199507") } > db.sourceCollection.insertOne({"EmployeeName":"Mike","EmployeeSalary":29000}); { "acknowledged" : true, "insertedId" : ObjectId("5e0397c4f5e889d7a5199508") }
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -
> db.sourceCollection.find().pretty();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e0397c1f5e889d7a5199506"), "EmployeeName" : "Robert", "EmployeeSalary" : 15000 } { "_id" : ObjectId("5e0397c3f5e889d7a5199507"), "EmployeeName" : "David", "EmployeeSalary" : 25000 } { EmployeeName" : "Mike", "E"_id" : ObjectId("5e0397c4f5e889d7a5199508"), "mployeeSalary" : 29000 }
다음은 새 컬렉션 "destinationCollection"을 만드는 쿼리입니다. -
> db.createCollection('destinationCollection'); { "ok" : 1 }
다음은 "sourceCollection"에서 다른 새 컬렉션 "destinationCollection"으로 행을 복사하는 쿼리입니다. -
> db.sourceCollection.aggregate([{ $sample: { size: 333333 }}, {$out: "destinationCollection"} ],{allowDiskUse: true});
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -
> db.destinationCollection.find().pretty()
그러면 새 컬렉션이 첫 번째 컬렉션 "sourceCollection"에서 레코드를 복사한 다음과 같은 출력이 생성됩니다. -
{ "_id" : ObjectId("5e0397c4f5e889d7a5199508"), "EmployeeName" : "Mike", "EmployeeSalary" : 29000 } { "_id" : ObjectId("5e0397c3f5e889d7a5199507"), "EmployeeName" : "David", "EmployeeSalary" : 25000 } { "_id" : ObjectId("5e0397c1f5e889d7a5199506"), "EmployeeName" : "Robert", "EmployeeSalary" : 15000 }