Удаление данных

Последнее обновление: 29.07.2022

Для удаления документов в MongoDB предусмотрены функции deleteOne() - удаляет один документ и deleteMany() - позволяет удалить несколько документов. В качестве параметра в эти функции передается фильтр удаляемых документов.

Например, удалим документ, в котором name="Tom":

db.users.deleteOne({name : "Tom"})

В итоге первый найденный документ с name=Tom будет удален. После удаления консоль отображает нам объект, в котором параметр deletedCount указывает на количество удаленных документов:

test> db.users.deleteOne({name : "Tom"})
{ acknowledged: true, deletedCount: 1 }

Для удаления всех документов, которые соответствуют фильтру, применяется функция deleteMany():

db.users.deleteMany({name : "Tom"})

Причем, как и в случае с find, мы можем задавать условия выборки для удаления различными способами (в виде регулярных выражений, в виде условных конструкций и т.д.):

db.users.deleteOne({name : /^T\w+/i})
db.users.deleteOne({age: {$lt : 30}})

Чтобы удалить разом все документы из коллекции, надо оставить пустым параметр запроса:

db.users.deleteMany({})

Удаление коллекций и баз данных

Мы можем удалять не только документы, но и коллекции и базы данных. Для удаления коллекций используется функция drop:

db.users.drop()

И если удаление коллекции пройдет успешно, то консоль выведет:

true

Чтобы удалить всю базу данных, надо воспользоваться функцией dropDatabase():

db.dropDatabase()
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850