MongoDB CURD操作概览
CRUD指对MongoDB文档的创建(Create)、读取(Read)、更新(Update)、和删除(Delete)操作。
一、文档插入
创建或插入操作将新文档添加到集合中。 如果该集合当前不存在,插入操作将创建该集合。
MongoDB 提供以下方法将文档插入到集合中:
- db..insertOne() New in version 3.2
- db..insertMany() New in version 3.2
在 MongoDB 中,插入操作针对单个集合。 MongoDB 中的所有写入操作在单个文档级别上都是原子的。
//向users集合中插入一个文档
db.users.insertOne(
{
name:'小明',
age:16,
status:'pending'
}
)
二、文档检索
读取操作从集合中检索文档,即查询文档集合。 MongoDB 提供以下方法从集合中读取文档:
- db..find(query, projection)
- query:使用查询运算符指定选择过滤器。 要返回集合中的所有文档,请省略此参数或传递一个空文档 ({})。
- projection:指定要在与查询过滤器匹配的文档中返回的字段。 要返回匹配文档中的所有字段,请省略此参数。
您可以指定返回的文档的过滤器或查询条件。
db.users.find(
{ age:{ $gt:18 } },
{ name:1, address:1 }
).limit(5)
三、文档更新
更新操作修改集合中的现有文档。 MongoDB 提供以下方法来更新集合的文档:
- db.collection.updateOne() New in version 3.2
- db.collection.updateMany() New in version 3.2
- db.collection.replaceOne() New in version 3.2
在 MongoDB 中,更新操作针对单个集合。 MongoDB 中的所有写入操作在单个文档级别上都是原子的。
您可以指定用于识别要更新的文档的条件或过滤器。 这些过滤器使用与读取操作相同的语法。
db.users.updateMany(
{ age: { $lt: 18 } },
{ $set: { status: 'reject' } }
)
四、文档删除
删除操作从集合中删除文档。 MongoDB 提供以下方法来删除集合的文档:
- db..deleteOne() New in version 3.2
- db..deleteMany() New in version 3.2
在 MongoDB 中,删除操作针对单个集合。 MongoDB 中的所有写入操作在单个文档级别上都是原子的。
您可以指定用于识别要删除的文档的条件或过滤器。 这些过滤器使用与读取操作相同的语法。
db.users.deleteMany(
{ status: 'reject' }
)
五、批量写入
MongoDB 提供批量执行写入操作的能力。