注册

MongoDB基础之集合操作

MongoDB基础之集合操作

1. 集合创建

在MongoDB数据库中,一个集合就是文档(MongoDB中的基本数据单位)的分组,也就是说,在MongoDB中,你存储的数据都是保存在集合中的。在MongoDB中,如果要创建集合的话,可以使用以下命令:

db.createCollection(name, options)

其中,name是集合名称,options是一个可选参数,用于指定一些选项。

以下是一个示例,创建一个名称为“mycol”的集合:

use mydb // 切换到mydb数据库
db.createCollection("mycol")

2. 插入文档

在MongoDB中,要插入文档,可以使用以下命令:

db.collection_name.insert(document)

上面的命令中,collection_name是集合名称,document是要插入的文档。

以下是一个示例,向名为“mycol”的集合中插入一条文档:

db.mycol.insert({
   title: 'MongoDB 教程',
   description: 'MongoDB 是一个 Nosql 数据库',
   by: 'Runoob',
   url: 'http://www.runoob.com',
   tags: ['mongodb', 'database', 'NoSQL'],
   likes: 100
})

3. 查询文档

在MongoDB中,可以使用find()方法来查询文档,例如:

db.collection_name.find(query, projection)

其中,collection_name是集合名称,query是查询条件,projection是可选的投影操作,用于指定返回结果中包含哪些字段。

以下是一个示例,查询名为“mycol”的集合中的所有文档:

db.mycol.find()

4. 更新文档

可以使用update()方法来更新MongoDB中的文档,例如:

db.collection_name.update(
   ,
   ,
   {
     upsert: ,
     multi: ,
     writeConcern: 
   }
)

其中,collection_name是集合名称,query是查询条件,update是要更新的文档内容。

以下是一个示例,将名为“mycol”的集合中title为“MongoDB 教程”的文档的likes字段更新为200:

db.mycol.update(
  {title: "MongoDB 教程"},
  {$set: {likes: 200}}
)

5. 删除文档

可以使用remove()方法来删除MongoDB中的文档,例如:

db.collection_name.remove(, {justOne: , writeConcern: })

其中,collection_name是集合名称,query是查询条件。

以下是一个示例,删除名为“mycol”的集合中title为“MongoDB 教程”的文档:

db.mycol.remove({title: "MongoDB 教程"})

示例说明

下面以一个示例,说明使用以上命令的过程。假设我们已经安装好MongoDB,创建了一个名为“mydb”的数据库,并且已经切换到该数据库。接下来,我们使用以下命令创建一个名为“mycol”的集合:

db.createCollection("mycol")

然后,我们使用以下命令插入一条文档:

db.mycol.insert({
   title: 'MongoDB 教程',
   description: 'MongoDB 是一个 Nosql 数据库',
   by: 'Runoob',
   url: 'http://www.runoob.com',
   tags: ['mongodb', 'database', 'NoSQL'],
   likes: 100
})

接着,我们查询该集合中的所有文档:

db.mycol.find()

然后,我们使用以下命令更新标题为“MongoDB 教程”的文档的likes字段:

db.mycol.update(
  {title: "MongoDB 教程"},
  {$set: {likes: 200}}
)

最后,我们删除标题为“MongoDB 教程”的文档:

db.mycol.remove({title: "MongoDB 教程"})

至此,我们已经学习了MongoDB基础之集合操作的攻略,可以开始在实践中使用MongoDB了!