Làm cách nào để nối hai mảng trong mongodb?
Để hợp nhất, hãy sử dụng toán tử $setUnion. Trước tiên chúng ta hãy tạo một bộ sưu tập với các tài liệu - Show > db.mergeTwoArrayFieldDemo.insertOne({"NaturalNumbers":[1,2,3,8,10,20,30],"WholeNumbers":[0,1,2,63,78,20,45]}); { "acknowledged" : true, "insertedId" : ObjectId("5cd68e4057806ebf1256f11d") } Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find() - > db.mergeTwoArrayFieldDemo.find().pretty(); Điều này sẽ tạo ra đầu ra sau - { "_id" : ObjectId("5cd68e4057806ebf1256f11d"), "NaturalNumbers" : [ 1, 2, 3, 8, 10, 20, 30 ], "WholeNumbers" : [ 0, 1, 2, 63, 78, 20, 45 ] } Sau đây là truy vấn để hợp nhất hai trường mảng trong MongoDB > db.mergeTwoArrayFieldDemo.aggregate([ { "$project": { "MergedArray": { "$setUnion": [ "$NaturalNumbers", "$WholeNumbers" ] } }} ]); Điều này sẽ tạo ra đầu ra sau - { "_id" : ObjectId("5cd68e4057806ebf1256f11d"), "MergedArray" : [ 0, 1, 2, 3, 8, 10, 20, 30, 45, 63, 78 ] } Cập nhật ngày 30-Jul-2019 22. 30. 26 ví dụTham gia hai mảng const arr1 = ["Cecilie", "Lone"]; Tự mình thử » Tham gia ba mảng const arr1 = ["Cecilie", "Lone"]; Thêm ví dụ bên dưới Định nghĩa và cách sử dụngPhương thức > db.mergeTwoArrayFieldDemo.find().pretty();1 nối (nối) hai hoặc nhiều mảng Phương thức > db.mergeTwoArrayFieldDemo.find().pretty();1 trả về một mảng mới, chứa các mảng đã nối Phương thức > db.mergeTwoArrayFieldDemo.find().pretty();1 không thay đổi các mảng hiện có cú phápmảng1. concat(mảng2, mảng3,. , mảngX) Thông sốParameterDescriptionarray1,. Yêu cầu.(Các) mảng cần nối. Giá trị trả vềTypeDescriptionMột mảngNội dung từ các mảng đã tham giaThêm ví dụNối các chuỗi và số const arr1 = ["Cecilie", "Lone"]; Tự mình thử » Nối các mảng lồng nhau const mảng1 = [1, 2, [3, 4]]; Hỗ trợ trình duyệt> db.mergeTwoArrayFieldDemo.find().pretty();1 là một tính năng ECMAScript1 (ES1) ES1 (JavaScript 1997) được hỗ trợ đầy đủ trên mọi trình duyệt ChromeEdgeFirefoxSafariOperaIECóCóCóCóCóCóTôi đang cố hợp nhất các mảng từ một yêu cầu với các mảng hiện có trong cơ sở dữ liệu MongoDB. Khi tôi in đầu ra của yêu cầu, các mảng không hợp nhất. Điều gì có vẻ là vấn đề ở đây? - stackoverflow. comghi bàn. 1 câu trả lời được chấp nhận phương thức concat()Kết quả của bạn là hành vi mong đợi của phương pháp > db.mergeTwoArrayFieldDemo.find().pretty();5. Từ tài liệu MDN
Bạn sẽ cần gán lại kết quả để có mảng được hợp nhất, thay đổi từ
đến
đẩy() phương phápMột giải pháp khác là sử dụng phương pháp > db.mergeTwoArrayFieldDemo.find().pretty();6
|