合併 MongoDB 中的兩個陣列欄位?
要合併,使用 $setUnion 運算子。讓我們首先建立一個包含文件的集合 -
> db.mergeTwoArrayFieldDemo.insertOne({"NaturalNumbers":[1,2,3,8,10,20,30],"WholeNumbers":[0,1,2,63,78,20,45]}); { "acknowledged" : true, "insertedId" : ObjectId("5cd68e4057806ebf1256f11d") }
以下是使用 find() 方法從集合顯示所有文件的查詢 -
> db.mergeTwoArrayFieldDemo.find().pretty();
這將產生以下輸出 -
{ "_id" : ObjectId("5cd68e4057806ebf1256f11d"), "NaturalNumbers" : [ 1, 2, 3, 8, 10, 20, 30 ], "WholeNumbers" : [ 0, 1, 2, 63, 78, 20, 45 ] }
以下是合併 MongoDB 中兩個陣列欄位的查詢。
> db.mergeTwoArrayFieldDemo.aggregate([ { "$project": { "MergedArray": { "$setUnion": [ "$NaturalNumbers", "$WholeNumbers" ] } }} ]);
這將產生以下輸出 -
{ "_id" : ObjectId("5cd68e4057806ebf1256f11d"), "MergedArray" : [ 0, 1, 2, 3, 8, 10, 20, 30, 45, 63, 78 ] }
廣告