一、MongoDB支持的数据类型
- 常见类型
- String:在MongoDB中的字符串必须是有效的UTF-8
- Integer:整数可以使32或64位,取决于服务器
- Boolean:存储布尔值(true/false)
- Double: 存储浮点值
- Date :存储日期
- Timestamp:时间戳,记录文件的修改或更新
- Binary data:用于存储二进制数据
- Null:存储null值
- 扩展类型
- Min/Max keys:被用来对BSON元素的最低和最高值比较
- Arrays:此类型的数据或列表或多个值存储到一个键
- Object:用于嵌入式的文件
- Symbol:用于字符串相同,但通常是保留给定符号类型的语言使用
- Object ID:存储文档的ID
- Code:存储到文档中的JavaScript代码
- Regular expression:存储正则表达式
二、数据库
- 查看所有的库
show dbs - 创建数据库
use DATABASE_NAME - 列表内容
删除库
三、集合
- 查看集合
show collections - 创建集合
db.createCollection(name,options) - 删除集合
db.COLLECTION_NAME.drop()
四、文档
插入文档
单条插入:db.COLLECTION_NAME.insert({})
批量添加:shell不支持批量添加,通过for循环实现
- insert和save
如果插入集合的”_id”值,在集合中已经存在,用insert执行插入操作会报异常,已经存在”_id”的键。用Save执行插入,如果系统中没有相同的”_id”,就执行插入操作,如果有,就执行覆盖原来的值。
删除文档
- 删除所有:db.COLLECTION_NAME.remove({})
- 按条件删除:
db.COLLECTION_NAME.remove(DELETE_CRITERIA)
查询文档
查询所有:db.COLLECTION_NAME.find()
按条件查询:db.COLLECTION_NAME.find({…})
查询结果,筛选字段显示:
db.COLLECTION_NAME.find({},{})
“>,>=,<,<=,!=”
“And,OR,In,NotIn”
查询第一条
查询排序
1:升序,-1:降序
分页查询
1.查询前3条
2.查询7条以后的数据
3.查询5~8之间的数据
$where条件查询
更新文档
强硬的文档替换式更新操作
强硬的更新会用新的文档
insertOrUpdate操作
查询出来的进行更新操作,查询不出来的进行插入操作
批量更新操作
使用修改器来完成局部更新操作