-
1. 进入my_test数据库
use my_test;
show dbs;
显示当前数据库中的集合
show collections;
-
2. 插入 / 添加 操作
1.插入两个值
db.users.insert({
username:"sunwukong"
});
db.users.insert({
username:"zhubajie"
});
2.向名为sunwukong 的文档,添加一个address属性
db.users.update(
{"username":"sunwukong"},
{$set:{
address:"huaguoshan"
}}
)
3.向sunwukong中添加一个hobby:{cities,movies}
向tangsanzang中添加一个hobby:{movies}
db.users.update(
{"username":"sunwukong"},
{$set:{
hobby:{cities:["beijing","shanghai","shenzhen"] , movies:["movie1","movie2"]}
}}
)
db.users.update(
{"username":"tangsanzang"},
{$set:{
hobby:{movies:["movie1","movie2"]}
}}
)
4.向数组中添加一个小元素$push
db.users.update(
{"username":"tangsanzang"},
{$push:{
"hobby.movies":"SuperMan"
}}
)
-
3. 改变某个值
使用unset可以删除元素
1.使用tangsanzang替换zhubajie
db.users.update(
{"username":"zhubajie"},
{$set:{
username:"tangsanzang"
}}
)
-
4. 删除操作
删除地址,可以随便填一个值
db.users.update(
{username:"sunwukong"},
{$unset:{
address:1}}
)
-
5. 查询操作
1.查询user集合中的所有文档
db.users.find();
2.统计数据库user集合中的文档数量
db.users.find().count()
3.查询username为sunwukong的文档
db.users.find({username:"sunwukong"})
4.查找内嵌文档的属性
如果需要查询内嵌文档则可以通过.形式进行匹配,
此时属性名必须使用引号
db.users.find({"hobby.movies" : "movie1"});
-
6. 其他操作
1.向某个集合中添加 100条数据
运用数组直接插入的方法,可以极大降低运行时间,一般可以降到1秒以内
var arr = [];
for(var i=1000 ; i<=1100 ; i++){
arr.push({num:i})
}
db.number.insert(arr);
DBQuery.shellBatchSize= 100;
db.number.find()
2.查找特定区间的文档
- 查询number中num为1060的文档
db.number.find({num:1060});
- 查询大于1060 的文档
db.number.find({num:{$gt:1060}});
- 查询小于1050的文档
db.number.find({num:{$lt:1050}});
- 大于1050,小于1060
db.number.find({num:{$gt:1050 , $lt:1060}});
显示前十个数据,这里引入limit 和 skip
显示第10-20;使用分页 每页显示10条
公式
skip(( 页码-1 )* 每页显示的条数).limit (每页显示的条数));
10-20,从第10个数起步,往后排10个
db.number.find().skip(10).limit(10);
20-30,从第20个数起步,往后排15个
db.number.find().skip(20).limit(15);