2011-08-19 3 views
3

제거, 풀, 설정 해제로 문서 또는 요소를 제거 할 수 있습니다.mongoDB에서 vs pull vs unset을 제거하십시오.

이 세 가지의 차이점은 무엇입니까?

현대의 지휘권 문제에서 어느 것이 더 안전한 방법입니까?

그리고 어느 것이 가장 빠르고 효율적인 제거 방법입니까?

답변

10

remove은 컬렉션에서 문서를 제거합니다. 이것은 SQL DELETE와 같습니다.

$pull$unset은 문서의 일부를 변경하는 업데이트 작업입니다. 이들은 SQL UPDATE와 유사합니다.

$pull은 배열에서 요소를 제거합니다.

$unset은 전체 배열 (또는 다른 필드)을 제거합니다.

그리고 어느 것이 가장 빠르고 효율적인 제거 방법입니까?

완전히 다른 것들이 있기 때문에 이는 의미있는 질문이 아닙니다.

+1

어떻게 든 제거 ({조건})를 통해 문서를 삭제할 수 없으므로 $ pull을 사용하여 문서를 삭제하려고합니다. – InspiredJW

+2

조건이있는 문서를 '찾을 수'있는 경우 '제거'할 수 있습니다 . 상태가 맞습니까? – Thilo