MongoDB 对象操作

Posted F

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 对象操作相关的知识,希望对你有一定的参考价值。

 

对象插入

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

输出

WriteResult({ "nInserted" : 1 })

 

使用 find() 函数查询数据

> db.col.find()
{ "_id" : ObjectId("56066169ade2f21f36b03137"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("5606616dade2f21f36b03138"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }

 

移除 title 为 ‘MongoDB 教程‘ 的对象

>db.col.remove({title:MongoDB 教程})
WriteResult({ "nRemoved" : 2 })           # 删除了两条数据
>db.col.find()
>                                         # 没有数据

 

只想删除第一条找到的记录可以设置 justOne 为 1

>db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)

 

删除所有数据,可以使用以下方式

>db.col.remove({})
>db.col.find()
>

 

删除集合下全部文档

db.inventory.deleteMany({})

 

删除 status 等于 A 的全部文档

db.inventory.deleteMany({status : "A"})

 

删除 status 等于 D 的一个文档

db.inventory.deleteOne({status: "D"})

 

remove() 方法 并不会真正释放空间。

需要继续执行 db.repairDatabase() 来回收磁盘空间

> db.repairDatabase()
或者
> db.runCommand({ repairDatabase: 1 })

 

 

 

以上是关于MongoDB 对象操作的主要内容,如果未能解决你的问题,请参考以下文章

代码片段 - Golang 实现集合操作

MongoDB批量操作时字段为null时不会入库

Node.JS中使用单例封装MongoDB

MongoDB 对象操作

MongoDB 基础操作

VSCode自定义代码片段12——JavaScript的Promise对象