📜  mongoose | deleteMany()函数(1)

📅  最后修改于: 2023-12-03 15:17:42.681000             🧑  作者: Mango

Mongoose | deleteMany()函数

deleteMany()函数是Mongoose中的一个方法,可用于MongoDB数据库中删除满足指定条件的文档。它的语法如下:

Model.deleteMany(conditions, callback)

参数解释:

  • conditions: 指定用于匹配文档的条件。
  • callback: 回调函数,用于在操作完成后执行回调。如果不需要回调,可以省略。

示例代码:

const User = mongoose.model('User', {
  username: String,
  password: String
})

User.deleteMany({ username: 'John' }, function(err) {
  if (err) {
    console.error(err)
  } else {
    console.log('Deleted all users with username "John"')
  }
})

上面的代码将会删除所有用户名为'John'的用户。如果操作成功,将输出'Deleted all users with username "John"'。

deleteMany()还可以返回Promise对象,可以用async/await语法处理Promise。示例如下:

async function deleteUser(username) {
  try {
    const result = await User.deleteMany({ username: username })
    console.log(`Deleted ${result.n} users with username "${username}"`)
  } catch (err) {
    console.error(err)
  }
}

deleteUser('Jane')

上述代码将删除所有用户名为'Jane'的用户,并输出"Deleted x users with username 'Jane'"的消息,其中x表示被删除的文档数。

总之,deleteMany()是Mongoose中一个非常有用的方法,可以帮助我们轻松地删除MongoDB数据库中满足指定条件的文档。