面试题答案
一键面试1. deleteOne
方法
- 方法简述:
deleteOne
方法用于删除符合指定条件的单个文档。语法为db.collection.deleteOne(<filter>)
,其中<filter>
是一个用于筛选要删除文档的条件。例如db.users.deleteOne({name: "John"})
,它会删除集合users
中第一个名字为John
的文档。 - 适用场景:
- 当明确知道只需删除一个特定的文档时使用。比如在用户管理系统中,要删除一个特定用户账号,且确定该账号唯一,就可以使用
deleteOne
。 - 若业务需求是对某个特定条件下的首个匹配文档进行删除操作,
deleteOne
可以精准满足这一需求,避免误删其他文档。
- 当明确知道只需删除一个特定的文档时使用。比如在用户管理系统中,要删除一个特定用户账号,且确定该账号唯一,就可以使用
2. deleteMany
方法
- 方法简述:
deleteMany
方法用于删除符合指定条件的多个文档。语法为db.collection.deleteMany(<filter>)
,同样<filter>
用于筛选要删除的文档。例如db.orders.deleteMany({status: "completed"})
,会删除集合orders
中所有状态为completed
的订单文档。 - 适用场景:
- 当需要批量删除满足特定条件的文档时使用。比如在日志管理系统中,要删除某个时间段之前的所有日志记录,就可以通过
deleteMany
结合时间筛选条件来完成批量删除。 - 如果业务场景涉及对某类数据的整体清理,例如清理过期的缓存数据,使用
deleteMany
可以高效地删除所有符合过期条件的文档。
- 当需要批量删除满足特定条件的文档时使用。比如在日志管理系统中,要删除某个时间段之前的所有日志记录,就可以通过