Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

คำสั่งตรงข้าม $addToSet คือ $pull ใน MongoDB

ลบค่าออกจาก Array ด้วย $pull (ตรงข้าม $addToSet)

$addToSet เพิ่มค่าเข้า Array ถ้ายังไม่มี | $pull ลบค่าที่ match ออกจาก Array

สร้างข้อมูลตัวอย่าง

> db.oppositeAddToSetDemo.insertOne({"StudentName":"John","StudentHobby":["Cricket","Cooking","Drawing"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c8eddcc2f684a30fbdfd588") }
> db.oppositeAddToSetDemo.insertOne({"StudentName":"Carol","StudentHobby":["Cricket","Dance","Hiking"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c8eddfd2f684a30fbdfd589") }
> db.oppositeAddToSetDemo.insertOne({"StudentName":"David","StudentHobby":["Learning","Photography"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c8ede272f684a30fbdfd58a") }

ลบ "Cooking" ออกจาก StudentHobby ของ John

> db.oppositeAddToSetDemo.update(
  {"StudentName": "John"},
  {$pull: { "StudentHobby": "Cooking" }}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

ตรวจสอบผลลัพธ์

> db.oppositeAddToSetDemo.find().pretty();
{ "_id" : ObjectId("5c8eddcc2f684a30fbdfd588"), "StudentName" : "John", "StudentHobby" : [ "Cricket", "Drawing" ] }
{ "_id" : ObjectId("5c8eddfd2f684a30fbdfd589"), "StudentName" : "Carol", "StudentHobby" : [ "Cricket", "Dance", "Hiking" ] }
{ "_id" : ObjectId("5c8ede272f684a30fbdfd58a"), "StudentName" : "David", "StudentHobby" : [ "Learning", "Photography" ] }

"Cooking" ถูกลบออกจาก Array ของ John แล้ว