1.基本状态查看:
db.getCollection('集合名').stats()
此方法为查看文档的一些统计信息。
2.常规查询:
db.getCollection('集合名').find({'字段名':'字段属性'})
3.查找某个字段不存在的文档:
db.getCollection('集合名').find({'字段名':{$exists:false}})
4.多字段查询:
db.getCollection('集合名').find({'字段1':{$exists:false},'字段2':{$exists:true}}).count()
5.嵌套字段的操作:
例如:字段name是嵌套在people下的字段,即name是people的子字段。
查找所有name为“lucy”的文档,则在people和name之间加点"."表示。
db.getCollection('集合名').find({'people.name':‘lucy’})
6.查找大于(大于,小于,等方法)某个值得文档
db.getCollection('集合名').find({'字段名':{'$gt':数值}})
$gt:大于; $lt:小于; $gte:大于或等于; $lte:小于或等于; $ne: 不等于
注:使用不等于时,"$ne"后面可以跟非数值型的数据,例如str类型。
例如 查询字段name存在且不为空字符串:db.getCollection("集合名").find({"name":{"$exists":true, "$ne":""}})
7.删除指定字段:
db.getCollection('集合名').update({'字段名':{$exists:true}}, {$unset:{'字段名':''}}, {multi:true})
参数multi设置为true表示对集合中的所有文档执行该命令,若设置为false则只修改找到的第一条文档。
8.删除满足某条件的文档:
db.getCollection('集合名').remove({'字段名':'条件'})
此处的“条件”同find命令的查询条件。
例如:db.getCollection('API').remove({'created':{'$gt':154, '$lt':156}}), 为删除集合“API”中‘created’字段属性在154-156之间的数据。
9.update更新字段属性:
db.getCollection('集合名').update({'字段名':‘原属性’},{'$set':{'字段名':‘目标属性’}},{multi:true})
10.按照指定排序输出显示:
db.getCollection('集合名').find().sort({"字段名":-1})
其中 1 为升序排列,而 -1 是用于降序排列
11.只输出显示某个字段:
db.getCollection('集合名').find({}, {'要显示的字段':1})
12.查看集合索引:
db.getCollection('集合名').getIndexes()
13.使用正则匹配查询某个字段中含有“某部分”内容的文档(部分匹配):
db.getCollection('集合名').find({post_text:{$regex:"runoob"}})