ในการย้อนกลับฟิลด์อาร์เรย์ใน MongoDB คุณสามารถใช้ forEach() ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.reverseArrayDemo.insertOne({"Skills":["C","Java"]}); { "acknowledged" : true, "insertedId" : ObjectId("5ccddf99dceb9a92e6aa1946") }
ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -
> db.reverseArrayDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5ccddf99dceb9a92e6aa1946"), "Skills" : [ "C", "Java" ] }
นี่คือแบบสอบถามเพื่อย้อนกลับเขตข้อมูลอาร์เรย์ใน MongoDB -
> db.reverseArrayDemo.find().forEach(function (myDocument) { ... var arrayValue = [ myDocument.Skills[1], myDocument.Skills[0] ]; ... db.reverseArrayDemo.update(myDocument, { $set: {Skills : arrayValue } }); ... });
ให้เราแสดงเอกสารจากคอลเลกชันด้านบนเพื่อตรวจสอบว่าฟิลด์อาร์เรย์ถูกย้อนกลับหรือไม่ -
> db.reverseArrayDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5ccddf99dceb9a92e6aa1946"), "Skills" : [ "Java", "C" ] }