Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

MongoDB의 문서에서 배열 값을 어떻게 삭제합니까?


배열 값을 삭제하려면 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" ] }