频道栏目
首页 > 资讯 > 其他综合 > 正文

MongoDB初探(二)--基本的操作

15-11-13        来源:[db:作者]  
收藏   我要投稿
mongoDB的一个简便的地方就是可以用js语言进行操作。
 
首先在启动了数据仓库后新开一个cmd窗口来连接数据库,默认连接的数据库是test
mongo localhost:27017 
接下来在这个窗口中就可以操作数据库了。
 
查看数据仓库中的所有数据库命令:  show dbs 
 
切换当前使用的数据库 命令:  use 名称 
 
删除当前数据库的命令:  db.dropDatabase() 
查看当前使用的是哪个数据库的命令:  db 
 
接下来就是建立集合(collection) 相当于关系型数据库中的表不过由于是nosql存储的是key-value所以并不需要固定字段。
 
显式建立集合命令:  db.createCollection(“person”) 
 
隐式创建:隐式创建就是在创建集合的同时往集合里面添加数据
 
CRUD操作:
 
1>插入操作 
 
插入数据: db.集合名称.insert({}) 
批量插入数据:由于mongo支持js所以我们可以很轻易的批量插入N条数据:
 
for(var i=1;i<=100;i++){
db.person2.insert({name:"user"+i,age:i})  
}
2>查询操作
 
查找所有数据:  db.集合名称.find()
查找集合中的第一条数据: db.集合名称.findOne()
按条件查找数据:db.集合名称.find({条件})
查询集合中的文档,返回某些特定的键值: db.集合名称.find({查询条件},{返回值条件})由于mongo使用c++编写的非关系型数据库所以一般0:false  1:true
 
查询数据,只返回 age字段: 
查询数据,返回除age外的其他字段:
查询时使用条件表达式:(<,<=,>,>=,!=)
 
//字段 >value
db.集合名称.find({字段名:{$gt:value}})
//字段 <value
db.集合名称.find({字段名:{$lt:value}})
//字段 >=value
db.集合名称.find({字段名:{$gte:value}})
//字段 <=value
db.集合名称.find({字段名:{$lte:value}}) 
 
排序(sort)、分页(skip,limit)
 
skip(2).limit(3) 从第二条开始,共返回3条| sort({age:1}); 降序-1
 
$all主要用来查询数组中的包含关系,查询条件中只要有一个不包含就不返回
$in,类似于关系型数据库中的IN | $nin,与$in相反
$or,相当于关系型数据库中的OR,表示或者的关系,例如查询name为user2或者age为13的文档,命令为: db.person.find({$or:[{name:”user2”},{age:13}]}) 
$nor,表示根据条件过滤掉某些数据,例如查询name不是user2,age不是13的文档,命令为: db.person.find({$nor:[{name:”user2”},{age:13}]})  
$exists,用于查询集合中存在某个键的文档或不存在某个键的文档,例如查询customer集合中存在name键的所有文档,可以使用  db.person.find({name:{$exists:1}})$exists:1表示真,指存在,$exists:0表示假,指不存在,
 
类似于关系型数据库,mongodb中也有游标的概念
3>更新操作
 
db.person.update(criteria,objNew,upsert,multi) 
 
参数说明:
 
criteria:用于设置查询条件的对象
 
objNew:用于设置更新内容的对象
 
upsert:如果记录已经存在,更新它,否则新增一个记录,取值为0或1
 
multi:如果有多个符合条件的记录,是否全部更新,取值为0或1
4>删除操作
 
db.集合名称.remove({条件}) 
相关TAG标签
上一篇:配置replica set的常见问题
下一篇:Oracle行列转换
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站