.",
"userFlags" : 1,
"capped" : false,
"nindexes" : 1,
"totalIndexSize" : 8176,
"indexSizes" : {
"_id_" : 8176
},
"ok" : 1
}
9.6 分页查询 skip 和 limit (类似于 linq 操作)
?
?
> db.LABELNET.find().skip(2).limit(2);
{ "_id" : ObjectId("55beca4632cbb5faa25c967f"), "name" : "ming", "age" : 10 }
{ "_id" : ObjectId("55beca5132cbb5faa25c9680"), "name" : "zhuo", "age" : 30 }
> db.LABELNET.find().skip(0).limit(2);
{ "_id" : ObjectId("55bec40532cbb5faa25c967c"), "name" : "csdn", "age" : 16 }
{ "_id" : ObjectId("55beca3932cbb5faa25c967e"), "name" : "yuan", "age" : 23 }
>
9.7 排序分页 sort , skip , limit
?
?
> db.LABELNET.find().sort({"age":1}).skip(0).limit(2);
{ "_id" : ObjectId("55beca4632cbb5faa25c967f"), "name" : "ming", "age" : 10 }
{ "_id" : ObjectId("55bec40532cbb5faa25c967c"), "name" : "csdn", "age" : 16 }
> db.LABELNET.find().sort({"age":1}).skip(2).limit(2);
{ "_id" : ObjectId("55beca3932cbb5faa25c967e"), "name" : "yuan", "age" : 23 }
{ "_id" : ObjectId("55beca5132cbb5faa25c9680"), "name" : "zhuo", "age" : 30 }
>
10.操作函数
?
10.1 示例 :插入100 条数据
?
> for(var i=0;i<100;i++){var ran=parseInt(i*Math.random());db.LABELNET.insert({"
name":"yuan","age":ran});}
WriteResult({ "nInserted" : 1 })
> db.LABELNET.find();
{ "_id" : ObjectId("55bec40532cbb5faa25c967c"), "name" : "csdn", "age" : 16 }
{ "_id" : ObjectId("55beca3932cbb5faa25c967e"), "name" : "yuan", "age" : 23 }
{ "_id" : ObjectId("55beca4632cbb5faa25c967f"), "name" : "ming", "age" : 10 }
{ "_id" : ObjectId("55beca5132cbb5faa25c9680"), "name" : "zhuo", "age" : 30 }
{ "_id" : ObjectId("55beca9f32cbb5faa25c9681"), "name" : "hpu", "age" : 30 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9682"), "name" : "yuan", "age" : 0 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9683"), "name" : "yuan", "age" : 0 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9684"), "name" : "yuan", "age" : 1 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9685"), "name" : "yuan", "age" : 1 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9686"), "name" : "yuan", "age" : 3 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9687"), "name" : "yuan", "age" : 2 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9688"), "name" : "yuan", "age" : 1 }
{ "_id" : ObjectId("55becfee32cbb5faa25c9689"), "name" : "yuan", "age" : 3 }
{ "_id" : ObjectId("55becfee32cbb5faa25c968a"), "name" : "yuan", "age" : 7 }
10.2 去某个key的值
?
?
> var list=db.LABELNET.find(); list.forEach(function(x){print(x.name);});
csdn
yuan
ming
zhuo
hpu
yuan
yuan
yuan
yuan
yuan
yuan
yuan
yuan
yuan
yuan
yuan
?
10.3 性能分析函数 explain
首先我们查到 age为83的 是最后一条,且仅此一条
?
{ "_id" : ObjectId("55becfee32cbb5faa25c96e5"), "name" : "yuan", "age" : 83 }
> db.LABELNET.count({"age":83});
1
>
后我们查询这个 age为 83 的文档 :
?
?
> db.LABELNET.count({"age":83});
1
> db.LABELNET.find({"age":83}).explain() ;
{
"queryPlanner" : {
"plannerVersion" : 1,
"namespace" : "student.LABELNET",
"indexFilterSet" : false,
"parsedQuery" : {
"age" : {
"$eq" : 83
}
},
"winningPlan" : {
"stage" : "COLLSCAN",
"filter" : {
"age" : {
"$eq" : 83
}
},
"direction" : "forward"
},
"rejectedPlans" : [ ]
},
"serverInfo" : {
"host" : "LABELNET",
"port" : 27017,
"version" : "3.0.5",
"gitVersion" : "8bc4ae20708dbb493cb09338d9e7be6698e4a3a3"
},
"ok" : 1
}
>
11.索引 (非常重要,可提供查询速度)ensureIndex
?
11.1 添加唯一索引
?
> db.LABELNET.ensureIndex({"name":1},{"unique":true});
{
"createdCollectionAutomatically" : false,
"numIndexesBefore" : 1,
"errmsg" : "exception: E11000