您的位置:首页 > 数据库 > Mongodb

MongoDB学习笔记

2016-05-30 21:42 591 查看
脚本交互操作

 
 
命令
描述
mongod --dbpath
启动数据库
mongo
连接数据库
help
显示帮助
db.help()
数据库级别的帮助
db.foo.help()
集合的帮助
db
显示当前数据库
show dbs
显示所有数据库
show collections
显示当前数据库的集合
show users
显示当前数据库的用户
use dbname
切换数据库
db.getCollection("name")
得到数据库集合
db.CONNECTION_NAME.drop()
删除名为CONNECTION_NAME的集合
  
  
db.test.find()
查询集合所有文档
db.test.findOne()
查询集合一个文档
db.test.find().limit(100)
查询前100个文档
db.test.insert({})
在集合中添加新文档
db.test.update({},{})
在集合中更新文档
db.test.remove({})
在集合中删除文档
db.test.save(doc)
同步doc文档到数据库
……
  
 
 
 
 
 
 
 
 
 
 
MongoDB数据类型

数据类型
描述
null
表示空值或不存在
布尔
true 或 false
32位整数
js不支持,在shell中转换为浮点数
64位整数
js不支持,在shell中转换为浮点数
64位浮点数
js支持
字符串
UTF-8
符号
js不支持,在shell中转换为字符串
对象id
文档的12字节的唯一ID
日期
从标准纪元开始的毫秒数,不存储时区
正则表达式
采用js正则表达式
代码
可以包含js代码
二进制数据
shell中无法使用
最大值
BSON包括一个特殊类型,表示可能的最大值
最小值
BSON包括一个特殊类型,表示可能的最小值
未定义
js中的undefined
数组
js中的[]
内嵌文档
js中{"s" : {"a" : "c"}}
 
 
 
 
 
 
 
 
修改器

 
 
 
 
"$set"修改器

 
 
插入文档
db.test.insert({"name" : "liyongjie"})

使用修改器添加或修改
db.test.update({"name" : "liyongjie"} , {"$set" : {"age" : 22}})         //添加age为22

修改age
db.test.update({"name" : "liyongjie"} , {"$set" : {"age":23}})           //修改age为23

使用"$unset"移除age
db.test.update({"name":"liyongjie"} , {"$unset" : {"age" : 1}})         //移除age

 
 
 
 
"$inc"修改器

 
 
增加数字类型的字段
db.test.update({"name" : "liyongjie",{"$inc" : {"age" : 1}}})    //使用负数减少计数

查询时数据增加1
db.test.find()

 
 
 
 
数组修改器

 
 
 
 
"$push"
db.test.update({"name" : "liyongjie"} , {"$push" : {"friends" : "小红"}})

 
 

"$addToSet"
db.test.update({"name" : "liyongjie"} , {"$addToSet" : {"friends" : "小明"}})      //添加不重复的项

也可以使用"$ne"进行条件过滤,如下:

db.test.update({"friends" : {"$ne":"小明"}} , {"$push":{"friends":"小明"}})

 
 

"$each"
db.test.update({"name":"liyongjie"} , {"$push" : {"friends" : {"$each" : ["小花", "小李"]}}})      //连续添加多项

 
 

"$pop"
db.test.update({"name" : "liyongjie"},{"$pop" : {"friends" : 1}})              //从末尾删除数组中的一项

 
 

"$pull"
db.test.update({"name" : "liyongjie"} , {"$pull" : {"friends" : "小花"}})          //删除数组中匹配的项

 
 

定位操作符"$"
数组名称(如friends)点下标可以定位到数组某一项,点$可以匹配到第一项

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: