添加一个对象数组到“Li”同学,记录“Li”同学的成绩
… subject :”Math”,
… score: 90
… },{
… subject :”English”,
… score:85
… },{
… subject :”History”,
… score:95
… }]
> db.Students.update({name:”Li”},{$set:{school:li}})
WriteResult({ “nMatched” : 1, “nUpserted” : 0, “nModified” : 1 })
> db.Students.find({name:”Li”},{})
{ “_id” : 4, “name” : “Li”, “age” : 27, “country” : “China”, “books” : [ “JS”, “JAVA”, “EXTJS”, “MONGODB” ],
“school” : [{ “subject” : “Math”, “score” : 90 },{ “subject” : “English”, “score” : 85 }, { “subject” : “History”, “score” : 95 }]
}
>
查询参加了数学考试,并且分数为90的同学
条件顺序变化时候,
例如:
查询出Student文档中前5条数据
查询出persons文档中3~8条的数据
查询所有数据,按照年龄排序
正序
倒序
skip性能不好,可以采用插入时间的做法来弥补,具体方法如下:
客户端发来信息叫他销毁
游标迭代完毕
默认游标超过10分钟没用也会别清除
快照后就会针对不变的集合进行游标运动了,看看使用方法.
为什么用快照,以为MongoDB在进行更新的时候,例如添加一些键值对,那么MongoDB的处理不会在原来的索引位置上进行更新操作,而是会把
更新之后的数据,放在末尾,那么就导致了前后两次进行查询时候相同索引对应不同数据的情况
补充:
高级查询选项
到此这篇关于MongoDB实现查询操作的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。
发表评论