Để đảo ngược trường mảng trong MongoDB, bạn có thể sử dụng forEach (). Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.reverseArrayDemo.insertOne({"Skills":["C","Java"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ccddf99dceb9a92e6aa1946")
} 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.reverseArrayDemo.find().pretty();
Điều này sẽ tạo ra kết quả sau -
{
"_id" : ObjectId("5ccddf99dceb9a92e6aa1946"),
"Skills" : [
"C",
"Java"
]
} Đây là truy vấn đảo ngược trường mảng trong MongoDB -
> db.reverseArrayDemo.find().forEach(function (myDocument) {
... var arrayValue = [ myDocument.Skills[1], myDocument.Skills[0] ];
... db.reverseArrayDemo.update(myDocument, { $set: {Skills : arrayValue } });
... }); Hãy để chúng tôi hiển thị tài liệu từ bộ sưu tập trên để kiểm tra trường mảng hiện đã được đảo ngược hay chưa -
> db.reverseArrayDemo.find().pretty();
Điều này sẽ tạo ra kết quả sau -
{
"_id" : ObjectId("5ccddf99dceb9a92e6aa1946"),
"Skills" : [
"Java",
"C"
]
}