MongoDB 문서 삭제
이전 장에서 우리는 MongoDB의 컬렉션에 데이터를 추가하고 업데이트하는 방법을 배웠습니다. 이 장에서는 MongoDB 컬렉션 삭제에 대해 계속해서 알아 보겠습니다.
MongoDB Remove() 함수는 컬렉션에서 데이터를 제거하는 데 사용됩니다.
MongoDB 데이터 업데이트는 update() 함수를 사용할 수 있습니다. 실행 조건이 올바른지 확인하기 위해, Remove() 함수를 실행하기 전에 find() 명령을 실행하는 것이 좋은 습관입니다.
구문
remove() 메서드의 기본 구문 형식은 다음과 같습니다.
db.collection.remove( <query>, <justOne> )
MongoDB 버전이 2.6 이상인 경우 구문 형식은 다음과 같습니다.
db.collection.remove( <query>, { justOne: <boolean>, writeConcern: <document> } )
매개변수 설명:
query : (선택 사항) 삭제된 문서에 대한 조건입니다.
justOne: (선택) true 또는 1로 설정하면 하나의 문서만 삭제됩니다.
writeConcern : (선택 사항) 예외가 발생하는 수준입니다.
예
다음 문서에 두 가지 삽입 작업을 수행합니다.
>db.col.insert({title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库', by: 'php中文网', url: 'http://www.php.cn', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })
find() 함수를 사용하여 데이터를 쿼리합니다.
> db.col.find() { "_id" : ObjectId("56066169ade2f21f36b03137"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "php中文网", "url" : "http://www.php.cn", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } { "_id" : ObjectId("5606616dade2f21f36b03138"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "php中文网", "url" : "http://www.php.cn", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
다음으로 'MongoDB Tutorial'이라는 제목의 문서를 제거합니다.
>db.col.remove({'title':'MongoDB 教程'}) WriteResult({ "nRemoved" : 2 }) # 删除了两条数据 >db.col.find() …… # 没有数据
처음 발견된 레코드만 삭제하려면 다음과 같이 justOne을 1로 설정하면 됩니다.
>db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)
모든 데이터를 삭제하려면 다음 방법을 사용하면 됩니다(일반 SQL의 truncate 명령과 유사).
>db.col.remove({}) >db.col.find() >