mongodb学习总结

主要学习:mongodb菜鸟教程

1、         use database_name:如果数据库不存在则创建数据库,否则,切换到指定数据库。

2、         show dbs:显示所有数据库,如果数据库中没有数据的存在则不显示。

3、         use database_name —》db.dropDatabase():删除指定数据库。(database_name)

4、         use database_name —》db.collection_name.drop():删除指定集合。(collection_name)

5、         db.createCollection(name,option):创建集合,name是必须参数指定集合名称,option是可选参数,其有四个字段皆是可选参数。

(1)    capped:如果是true,则创建有固定大小的集合,达到最大值时,会覆盖最早的文档。且此值为true,必须指定size参数。

(2)    autoIndexId:如果为true,自动在 _id字段创建索引,默认false。

(3)    size:capped为true,需指定此参数,规定集合大小。

(4)    max:指定固定集合中包含文档的最大数量。

6、         db.collection_name.insert(document):插入文档,document可以是已经定义了的一个变量,也可以直接就是文档。这其中,如果collection_name集合并没有被创建,则这句话直接创建collection_name 集合。

7、         db.collection_name.save(document):save命令有两种作用:

(1)    如果指定了_id字段,则更新指定 _id 的文档。

(2)    如果没有指定 _id 字段,则与 insert命令效果相同。

8、         update():更新已存在的文档。

语法格式:db.collection_name.update(<query>,<update>,{upsert:<boolena>,multi:<boolean>,writeConcern:<docement>})

参数说明:

(1)    query:update的查询条件,类似于sql语句中的where后面的语句。

(2)    update:update的对象,类似于sql语句中的set后面的语句。

(3)    upsert:如果不存在update的对象,true则插入,false不插入。

(4)    multi:默认false,仅仅update查询到的第一条文档,设置为true则update按条件查询出来的所有文档。

(5)    writeConcern:抛出异常等级。(3)(4)(5)这三个参数均是可选的。

Example:db.test.update({‘title’:’mongodb教程’},{$set:{‘title’:’MongoDB’}},{multi:true})。

9、         remove():删除文档。

语法格式:db.collection_name.remove(<query>,{justOne:<boolean>,writeConcern:<document>})

参数说明:

(1)    query:可选,删除的文档的条件。

(2)    justOne:可选,如果设为true或1,则只删除一个文档,如果没有设置,则删除所有符合条件的文档。

(3)    writeConcern:可选:抛出异常的级别。

Example:db.test.remove({‘title’:’MongoDB’},{justOne:true})

10、      find():查询文档。

语法格式:db.collection_name.find(query,projection)

参数说明:

(1)    query:可选:指定的查询条件。

(2)    projection:可选,没看明白,可省略。

Example:db.collection_name.find({‘title’:’MongoDB’,’此处可以多选条件”,”隔开即可’}).pretty()

这种逗号隔开的方式可以认为是AND查询操作。

11、      OR查询操作:

语法格式+example:

db.test.find({$or:[{‘title’:’MongoDB’},{‘likes’:’100’}]}).pretty()。

AND和OR 的合用:

db.test.find({‘url’:’http://www.runoob.com’,$or:[{‘title’:’MongoDB’},{‘likes’:’100’}]}).pretty()

12、      条件语句查询:

 

13、  $type条件语句查询:

           Example:db.test.find({“title”:{$type:1}})

           上述这句话的意思是找title字段中数据类型是1,mongodb中类型1是double的数据。Mongodb中对于各种类型都有定义,可以用对应的数字,也可以直接用类型,如上述的1可以换成 ’Double’,依然可以。

14、  关于mongodb的聚合:用几个菜鸟上的截图做笔记:

 

增加一个mongodb导入数据的语句:mongoimport -d 数据库名 -c 集合名 路径一直到文件名。

尝试这个语句时,windows + cmd + mongo + 语句 没成功,但是 windows + cmd + 语句 成功了。为啥我不知道!

增加一个mongodb导出数据的语句:mongoexport -d 数据库名 -c 集合名 -o /路径/文件名.json。

用这个语句时,我用WinSCP+Putty连接到远程服务器导出此文件,在WinSCP上下载并删除就到自己本地了。

MongoDB 导出整个数据库:mongodump -h IP地址 --port 端口 -d 数据库名 -o 存储路径

如果有用户名和密码:mongodump -h IP地址 --port 端口 -u 用户名 -p 密码 -d 数据库名 -o 存储路径

MongoDB 导入整个数据库:mongorestore -h IP地址:端口 -d 数据库名 存储路径(一直到文件夹名)

posted on 2019-03-12 16:05  AHRI-9245  阅读(171)  评论(0编辑  收藏  举报

导航