mongodb的使用(启动->安装 使用)

mongodb的使用(启动->安装 使用)

winows安装mongodb

下载地址:https://www.mongodb.com/try/download/community

安装一步一步next,安装完成后,进入安装目录

以管理员模式运行cmd,切换到bin目录,输入以下命令启动服务 net start mongodb

net stop mongodb 命令可停止服务

接下来输入以下命令启动地址服务

mongo --host=localhost --port=27017

接下来就是数据库相关操作了

常用操作

1.新建数据库use 数据库名;

2.显示所有数据库show dbs;

3.新建集合(两种方式)隐式创建:在创建集合的同时往集合里面添加数据---db.c1.insert({name:"fuck",age:29});

显式创建db.createCollection()---db.createCollection("c2");

4.显示所有集合show collections;

5.db命令db命令表示当前操作的数据库

6.插入一对,当数据库没有集合c1时,mongodb会自动创建集合c1key-value:db.c1.insert({name:"fuck",age:22});

7.查找某个集合中的所有数据db.c1.find();

8.查找某个集合中的特定条件的数据单条件查询:db.c1.find({name:"fuck"})

多条件查询:db.c1.find(name:"fuck",age:22)

只关心个别元素的查询,即查出来只显示name这个字段,这里的1表示显示,0表示不显示db.c1.find({},{"name":1,"_id":0})

9.for循环插入数据:

for(var i=0;i<10000;i++)

{

db.c1.insert({name:"caonima",age:i})

}

10.mongodb支持分页,只会显示前20条数据db.c1.find()

11.查询集合条数db.c1.find().count()

12.查询符合条件的第一条文档db.c1.findOne({name:"fuck"})

13.查询一个集合中age大于5的所有文档db.c1.find({age:{$gt:5}})

大于等于5db.c1.find({age:{$gte:5}})

小于5db.c1.find({age:{$lt:5}})

小于等于5db.c1.find({age:{$lte:5}})

不等于5db.c1.find({age:{$ne:5}})

14.分页查询,查询众多结果中的第5到10条db.c1.find().skip(5).limit(5);

备注:第一个5为开始的序号,后面的5为开始序号后的条数

15.查询集合中的文档,$all主要用来查询数组中包含关系,查询条件中只要有一个不包含就不返回

db.c1.find({"b": { "$all" : [3,5]}});

{ "_id" : 11, "a" : "5", "b" : [ 5, 3, 7 ] }

{ "_id" : 111, "a" : 1, "b" : [ 3, 5 ] }

16.查询集合中的文档,$in,类似于关系型数据库中的INdb.c1.find({age:{$in:[12,45]}})

17.查询集合中不包含的文档,$nin,与$in相反db.c1.find({age:{$nin:[12,45]}})

18.查询集合中或条件的文档,$or,根据条件过滤掉某些数据db.c1.find({$or:[{name:"fuckyou"},{age:11}]})

19.查询集合中或条件相反的文档,$nor,根据条件过滤掉某些数据db.c1.find({$nor:[{name:"fuckyou"},{age:11}]})

20.查询集合中的文档,$exists,用于查询集合中存在某个键的文档或不存在某个键的文档,例如查询某集合中存在name键的所有文档,可以使用db.集合.find({name:{$exists:1}}),指存在键名为name的文档,exists:1表示真,指存在,exists:0表示假,指不存在。

21.mongodb中的游标:

var x = db.c1.find()

x.hasNext()

x.next()

22.更新集合中的文档,将age为33的name改为caonimadb.c1.update({age:33},{$set:{name:"caonima"}})

23.更新集合语法db.collectionName.update(param1,param2,param3,param4)

1、需要更新的条件2、更新的内容的对象3、如果没有符合条件的记录,是否新增一条记录。1为新增,默认值为04、如果有多个符合条件的记录,是否全部更新,(默认值为0),如果全部更新,取值为1

24.展示mongo语句的扫描条数和查询耗时可调用explain()函数db.c2.update({"name":"fuck"}).explain()

25.更新集合中的文档,使用 $inc 将集合中name为user1的age加1,其它键不变, $inc表示使某个键值加指定的数值db.c2.update({name:"caonima"},{$inc:{age:2}});

26.更新集合中的文档, $unset 用来删除某个键db.c2.update({name:"laji"},{$unset:{age:1}},1,0);

1、需要更新的条件2、更新的内容的对象3、如果没有符合条件的记录,是否新增一条记录。1为新增,默认值为04、如果有多个符合条件的记录,是否全部更新,(默认值为0),如果全部更新,取值为1

27.删除orders集合的所有数据,集合还存在,索引都还存在db.c2.remove({})

28.根据条件删除数据db.c2.remove({age: 55})

29.删除集合,集合、索引都不存在了db.collection.drop()

30.更多操作详见db.help()

后续继续添加

🎈 相关推荐

抢篮板的是什么位置
bob365

抢篮板的是什么位置

📅 09-11 👀 636
担任教皇33天的保罗一世为何猝死?各种迹象表明,他并非病死
比特币是什么,它是如何工作的?
365bet外围网站

比特币是什么,它是如何工作的?

📅 10-04 👀 5414