2015-02-11 89 views

回答

0

db.collection.drop()將刪除對整個集合(非常快)和集合中的所有指標。

db.collection.remove({})將刪除所有條目,但集合和索引仍然存在。

因此,兩種操作都有所不同。第一個更快,但會刪除更多的元信息。如果你想竊聽他們,你不應該使用它。

1

刪除數據收集

db.collection.remove({}) 

中的所有文件將僅刪除集合中的所有數據,但留下任何指標不變。如果新文檔添加到集合中,它們將填充現有索引。

液滴收集和所有連接索引

db.collection.drop() 

將下降的收集和所有索引。如果集合被重新創建,那麼索引也需要重新創建。

從你的問題來看,如果你只想刪除一個集合中的所有實體,那麼使用db.collection.remove({})會更好,因爲這將保持集合完好無損,所有索引仍然存在。

從速度上看,drop()命令更快。

+0

感謝kevin,但除了索引更快? – squal 2015-02-12 03:50:46

相關問題