14.分页查询,查询众多结果中的第5到10条
db.c1.find().skip(5).limit(5);
备注:第一个5为开始的序号,后面的5为开始序号后的条数
15.查询集合中的文档,$all主要用来查询数组中包含关系,查询条件中只要有一个不包含就不返回
代码语言:javascript复制 db.c1.find({"b": { "$all" : [3,5]}}); { "_id" : 11, "a" : "5", "b" : [ 5, 3, 7 ] } { "_id" : 111, "a" : 1, "b" : [ 3, 5 ] }
16.查询集合中的文档,$in,类似于关系型数据库中的IN
db.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中的游标:
代码语言:javascript复制var x = db.c1.find()x.hasNext()x.next()
22.更新集合中的文档,将age为33的name改为caonima
db.c1.update({age:33},{$set:{name:"caonima"}})
23.更新集合语法
db.collectionName.update(param1,param2,param3,param4)
1、需要更新的条件 2、更新的内容的对象 3、如果没有符合条件的记录,是否新增一条记录。1为新增,默认值为0 4、如果有多个符合条件的记录,是否全部更新,(默认值为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为新增,默认值为0 4、如果有多个符合条件的记录,是否全部更新,(默认值为0),如果全部更新,取值为1
27.删除orders集合的所有数据,集合还存在,索引都还存在
db.c2.remove({})
28.根据条件删除数据
db.c2.remove({age: 55})
29.删除集合,集合、索引都不存在了
db.collection.drop()
30.更多操作详见
db.help()