mongodb入门笔记

来源:互联网 发布:weka 删除数据 编辑:程序博客网 时间:2024/04/30 02:24

一:基本语法:

          mongodb内置的帮助功能非常实用。需要查看哪一级操作的帮助,直接xxx.help()即可,便会列出所有可用的操作.后面会有英文说明,看说明就知道对应的方法是干什么用的。


二:概念:

 mongodb存储结构:

db(相当于关系型数据库中的数据库):共用同一个索引的collections的集合

collection(相当于关系型数据库中的表):共用一个索引的documents的集合。

document(相当于关系性数据库中的一行记录,即一个实体对象):共用一个索引的对象属性的集合。

可见mongodb中把关系型数据库中的包含存储关系变为索引式的存储方式。以二进制表示的json数据格式(BSON)存储数据,用索引加快读取速度,所以mongodb这类非关系型数据库的读取速度会比关系型数据库快很多。

mongodb中的索引:为了提高查询和更新速度,mongodb使用了间接索引,应用程序可以把部分collections存储在一个读取速度很快的数据结构中方便读取

三:CURD操作:

查询操作

原理:在mongodb中,一个查询的对象是一系列共用一个索引的文档的集合,也就是一个collection。查询的时候根据查询的准则和条件返回documents结果。

例子:db.test.find({age:{$gt:19}}).sort({age:1})  查询test集合中年龄大于19的对象的集合,并且按照年龄从小到大排序。

> db.table1.find({name:'kangbiao'},{id:1})默认会选择_id字段,如果不需要则添加_id:0排除此字段
{ "_id" : ObjectId("555d83b941e0463f63076431"), "id" : 1 }
{ "_id" : ObjectId("555d83de41e0463f63076432"), "id" : 1 }
> db.table1.find({name:'kangbiao'},{_id:1})
{ "_id" : ObjectId("555d83b941e0463f63076431") }
{ "_id" : ObjectId("555d83de41e0463f63076432") }
> db.table1.find({name:'kangbiao'},{_id:0})
{ "id" : 1, "name" : "kangbiao", "sex" : 1 }
{ "id" : 1, "name" : "kangbiao", "sex" : 1, "pwd" : "dsadasda" }

插入操作

 例子:db.test.insert({age:19,name:'xiaoming',pwd:'adgsfsdsdfs'})  将小明这个对象插入到test集合中。


附一张图说明mongodb查询过程:



为一个collection创建索引加快查询速度

db.test.creatIndex({name:1}),为test增加一个name索引,索引为顺序排列。



0 0