位置: 编程技术 - 正文
推荐整理分享MongoDB中对文档的增删查改基本操作方法总结(mongodb 数据文件),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:mongodb document,mongodb使用方法,mongodb document,mongodb文件格式,mongodb writeconcern,mongodb 数据文件,mongodb docs,mongodb docs,内容如对您有帮助,希望把文章链接给更多的朋友!
插入文档:insert() 方法
要插入数据到 MongoDB 集合,需要使用 MongoDB 的 insert() 或 save() 方法。
语法:
insert() 命令的基本语法如下:
例子:
>db.mycol.insert({ _id: ObjectId(7dfadc), title: 'MongoDB Overview', description: 'MongoDB is no sql database', by: 'tutorials point', url: ' tags: ['mongodb', 'database', 'NoSQL'], likes: })这里 mycol 是集合的名称,如前面的教程中创建。如果集合在数据库中不存在,那么MongoDB 将创建此集合,然后把它插入文档。
插入文档中,如果我们不指定_id参数,然后MongoDB 本文档分配一个独特的ObjectId。
_id 是个字节的十六进制数,唯一一个集合中的每个文档。 个字节被划分如下:
要插入单个查询的多个文档,可以传递一个数组 insert() 命令的文件。
示例:
>db.post.insert([ { title: 'MongoDB Overview', description: 'MongoDB is no sql database', by: 'tutorials point', url: ' tags: ['mongodb', 'database', 'NoSQL'], likes: }, { title: 'NoSQL Database', description: 'NoSQL database doesn't have tables', by: 'tutorials point', url: ' tags: ['mongodb', 'database', 'NoSQL'], likes: , comments: [ { user:'user1', message: 'My first comment', dateCreated: new Date(,,,2,), like: 0 } ] } ])要插入文件,也可以使用 db.post.save(document)。 如果不指定_id在文档中,然后将其 save() 方法和 insert()方法工作一样。如果指定_id,它会替换整个数据文件,其中包含_id 指定save()方法。
删除文档:remove() 方法
MongoDB的 remove() 方法用于从集合中删除文档。remove() 方法接受两个参数。第一个是删除criteria ,第二是justOne标志:
(1)deletion criteria :(可选)删除标准,根据文件将被删除。
(2)justOne : (可选)如果设置为true或1,然后只删除一个文件。
语法:
基本语法remove()方法如下
例子:
考虑以下数据mycol集合。
{ "_id" : ObjectId(adfec5), "title":"MongoDB Overview"} { "_id" : ObjectId(adfec6), "title":"NoSQL Overview"} { "_id" : ObjectId(adfec7), "title":"Yiibai Overview"}下面的例子将删除所有的文件,其标题是 'MongoDB Overview'
>db.mycol.remove({'title':'MongoDB Overview'}) >db.mycol.find() { "_id" : ObjectId(adfec6), "title":"NoSQL Overview"} { "_id" : ObjectId(adfec7), "title":"Yiibai Overview"} >删除只有一个。
如果有多个记录且要删除的只有第一条记录,那么设置remove()方法中justOne参数
删除所有文件:
如果不指定删除条件,然后MongoDB将从集合中删除整个文件。这相当于SQL的truncate命令。
查询文档:1.find() 方法要从MongoDB 查询集合数据,需要使用MongoDB 的 find() 方法。
语法:
基本的find()方法语法如下
find() 方法将在非结构化的方式显示所有的文件。
2.pretty() 方法
结果显示在一个格式化的方式,可以使用 pretty() 方法.
语法:
例子:
>db.mycol.find().pretty() { "_id": ObjectId(7dfadc), "title": "MongoDB Overview", "description": "MongoDB is no sql database", "by": "tutorials point", "url": " "tags": ["mongodb", "database", "NoSQL"], "likes": "" } >除了find() 方法外,还有一个 findOne() 法,返回一个文件。
RDBMS Where子句和MongoDB等同语句.
要查询文件的一些条件的基础上,可以使用下面的操作 操作 语法 例子 RDBMS 等同 Equality key db.mycol.find({"by":"tutorials point"}).pretty() where by = 'tutorials point' Less Than {<key>:{$lt:<value>}} db.mycol.find({"likes":{$lt:}}).pretty() where likes < Less Than Equals {<key>:{$lte:<value>}} db.mycol.find({"likes":{$lte:}}).pretty() where likes <= Greater Than {<key>:{$gt:<value>}} db.mycol.find({"likes":{$gt:}}).pretty() where likes > Greater Than Equals {<key>:{$gte:<value>}} db.mycol.find({"likes":{$gte:}}).pretty() where likes >= Not Equals {<key>:{$ne:<value>}} db.mycol.find({"likes":{$ne:}}).pretty() where likes != 3.AND 在MongoDB中用法
语法:
在 find() 方法,如果通过多个键分离',',那么 MongoDB 处理 AND 条件。AND 基本语法如下所示:
例子
下面给出的例子将显示所有的教程,标题是“MongoDB Overview“
>db.mycol.find({"by":"tutorials point","title": "MongoDB Overview"}).pretty() { "_id": ObjectId(7dfadc), "title": "MongoDB Overview", "description": "MongoDB is no sql database", "by": "yiibai", "url": " "tags": ["mongodb", "database", "NoSQL"], "likes": "" } >对于上面给出的例子相当于where子句 ' where by='yiibai' AND title='MongoDB Overview' , 可以通过任意数量的键值对在 find 子句。
4.MongoDB中OR
语法:
OR条件的基础上要查询文件,需要使用$or关键字。OR 基本语法如下所示:
例子
下面给出的例子将显示所有的教程,由'yiibai' 所写或标题是“MongoDB Overview '
>db.mycol.find({$or:[{"by":"yiibai"},{"title": "MongoDB Overview"}]}).pretty() { "_id": ObjectId(7dfadc), "title": "MongoDB Overview", "description": "MongoDB is no sql database", "by": "yiibai", "url": " "tags": ["mongodb", "database", "NoSQL"], "likes": "" } >5.AND 和 OR 一起使用
例子
下面给出的例子将显示有像的文件大于,其标题是“MongoDB Overview'或者是'yiibai' 。等效于 SQL where子句 为
>db.mycol.find("likes": {$gt:}, $or: [{"by": "yiibai"}, {"title": "MongoDB Overview"}] }).pretty() { "_id": ObjectId(7dfadc), "title": "MongoDB Overview", "description": "MongoDB is no sql database", "by": "yiibai", "url": " "tags": ["mongodb", "database", "NoSQL"], "likes": "" } >
更新文档 MongoDB的 update() 和 save() 方法用于更新文档的集合。 update()方法更新现有的文档值,而替换现有的文档通过的文件中 save() 方法。
1.MongoDB Update() 方法
update()方法更新现有文档值。
语法:
update() 方法的基本语法如下
例子
考虑以下数据mycol集合。
{ "_id" : ObjectId(adfec5), "title":"MongoDB Overview"} { "_id" : ObjectId(adfec6), "title":"NoSQL Overview"} { "_id" : ObjectId(adfec7), "title":"Tutorials Point Overview"}下面的例子将设置新标题'MongoDB Overview'的文件,更新其标题是“New MongoDB Tutorial”
>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}}) >db.mycol.find() { "_id" : ObjectId(adfec5), "title":"New MongoDB Tutorial"} { "_id" : ObjectId(adfec6), "title":"NoSQL Overview"} { "_id" : ObjectId(adfec7), "title":"Yiibai Overview"} >MongoDB默认将只更新单一的文件,来更新多个你需要设置参数置'multi' 为true
>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}},{multi:true})2.MongoDB Save() 方法
save() 方法替换现有的文档和通过新的文档 save() 方法
语法
MongoDB 的 save() 方法的基本语法如下:
例子
下面的例子将取代文件具有_id为 'adfec7'
>db.mycol.save( { "_id" : ObjectId(adfec7), "title":"Yiibai New Topic", "by":"Yiibai" } ) >db.mycol.find() { "_id" : ObjectId(adfec5), "title":"Yiibai New Topic", "by":"Yiibai"} { "_id" : ObjectId(adfec6), "title":"NoSQL Overview"} { "_id" : ObjectId(adfec7), "title":"Yiibai Overview"} >
MongoDB的聚合框架Aggregation Framework入门学习教程 1.聚合框架使用聚合框架对集合中的文档进行变换和组合,可以用多个构件创建一个管道(pipeline),用于对一连串的文档进行处理。这些构件包括筛选(filt
mongodb+php实现简单的增删改查 windows上安装mongodb的php扩展下载地址
MongoDB在不同主机间复制数据库和集合的教程 1.db.cloneCollection()db.cloneCollection(from,collection,query)在不同的mongodb实例间复制数据,db.cloneCollection是cloneCollection数据库命令的一个外在体现。function(from,colle
标签: mongodb 数据文件
本文链接地址:https://www.jiuchutong.com/biancheng/312555.html 转载请保留说明!友情链接: 武汉网站建设