Syntax Error.

[Sy] MongoDBでコレクションのドキュメントをすべて削除する方法

2015/05/13

MongoDBでコレクション自体は残して、ドキュメントだけをすべて削除する方法です。

collectionオブジェクトには、remove()があるのでそれを呼び出せばいいのかと思ってやってみると、

> db.[collection].remove()
2015-05-13T20:23:14.746+0900 E QUERY    Error: remove needs a query
at Error (<anonymous>)
at DBCollection._parseRemove (src/mongo/shell/collection.js:305:32)
at DBCollection.remove (src/mongo/shell/collection.js:328:23)
at (shell):1:9 at src/mongo/shell/collection.js:305

とエラーになってしまいます。remove needs a queryとあるので、すべて削除する場合にもクエリが必要なようです。

なのでこうするとOK。

> db.[collection].remove({})

{}で空のクエリを渡してあげる必要があったんですね。これでドキュメントがすべて削除されます。