배열 값을 삭제하려면 MongoDB에서 $pull을 사용하세요. $pull 연산자는 지정된 조건과 일치하는 값의 모든 인스턴스를 기존 배열에서 제거합니다.
먼저 문서로 컬렉션을 만들어 보겠습니다. −
> db.demo535.insertOne(
... {
...
... "studentId" : "101",
... "studentName" : "Chris",
... "ListOfMailIds" : [
... "Chris@gmail.com",
... "Chris@yahoo.com"
... ]
...
... }
... )
{
"acknowledged" : true,
"insertedId" : ObjectId("5e8c82bfef4dcbee04fbbc00")
} find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo535.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e8c82bfef4dcbee04fbbc00"), "studentId" : "101", "studentName" : "Chris",
"ListOfMailIds" : [ "Chris@gmail.com", "Chris@yahoo.com" ] } 다음은 MongoDB의 문서에서 배열 값을 삭제하는 쿼리입니다 -
> db.demo535.update(
... { _id: ObjectId("5e8c82bfef4dcbee04fbbc00") },
... { $pull: { 'ListOfMailIds': 'Chris@yahoo.com' } }
... );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo535.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e8c82bfef4dcbee04fbbc00"), "studentId" : "101", "studentName" : "Chris", "ListOfMailIds" : [ "Chris@gmail.com" ] }