Я пробував
db.users.remove(*)
Хоча воно повертає помилку, так як я можу виконати очищення всіх записів?
Відповіді:
Аргументом remove()є документ фільтра, тому передача порожнього документа означає "видалити все":
db.user.remove({})
Однак, якщо ви точно хочете видалити все, вам може бути краще скинути колекцію. Хоча це, ймовірно, залежить від того, чи є в колекції індекси, визначені користувачем, тобто чи перевищує вартість підготовки колекції після її видалення більшу тривалість remove()дзвінка в порівнянні із drop()дзвінком.
Детальніше в документах .
removeзараз застаріла. використовувати db.user.deleteMany({})замість цього
removeзастаріле ( docs.mongodb.com/manual/reference/method/db.collection.remove ). Чи можете ви надати посилання або посилання на підтвердження цього твердження?
Ви можете видалити всі документи з колекції в MongoDB, ви можете використовувати наступне:
db.users.remove({})
Крім того, ви можете скористатися наступним методом:
db.users.deleteMany({})
Дотримуйтесь наступної документації MongoDB детальної інформації .
Для того, щоб видалити всі документи з колекції, передати порожній документ фільтр
{}або доdb.collection.deleteMany()або вdb.collection.remove()методі.
db.users.count()
db.users.remove({})
db.users.count()
Щоб видалити всі документи з усіх колекцій:
db.getCollectionNames().forEach( function(collection_name) {
if (collection_name.indexOf("system.") == -1) {
print ( ["Removing: ", db[collection_name].count({}), " documents from ", collection_name].join('') );
db[collection_name].remove({});
}
});