MongoDB

MongoDB Remove Documents

macro 2011. 10. 13. 18:09
반응형

다큐먼트를 삭제한다.

 

1. db.things.remove({});    // removes all
2. db.things.remove({n:1}); // removes all where n == 1

 

위의 2번에서 remove 명령은 매칭된 모든 다큐먼트를 삭제한다.

따라서 하나의 다큐먼트를 삭제할 경우는 옵션을 넣어준다.

 

db.things.remove({n:1}, {justOne : true});

 

atomic 연산을 위해서는 다음과 같은 옵션을 준다.

 

db.videos.remove( { rating : { $lt : 3.0 }, $atomic : true } )

 

** php 드라이버를 사용하여 삭제시 주의점.

php 드라이버 에서는 삭제시 하나만 삭제되는것이 디폴트로 되어있다.

$collection->remove(array("send_id" => $send_id));

 

따라서 해당되는 여러 다큐먼트들을 삭제하려면 다음과 같은 옵션을 준다.

$options = array("justOne" => false);   
$collection->remove(array("send_id" => $send_id), $options);

반응형