一。. mongodb数据类型:每个字段的数据类型不需要指定,是由传入的值来推出类型
string
interger
boolean
double
array : db.col.insert({name:["san","si","wu"]})
timestamp
object
null
symbol
date
object id
code:javascript
regular expression
二。.mongodb 文档的插入,修改,删除
db.col.insert({name:"zhangsan",age:11})
db.col.update() //如何不存在查询的数据则插入数据,若查询到多个满足条件的数据则只更新第一条,若需更新所有的满足条件的数据则要用multi 默认只更新一条,更新所有设置true
db.col.update
(
{sex:"nan"},
{$set:{age:30}}
) db.col.update
(
{sex:"nan"},
{$set:{age:30}},
{multi:true}
)save()
mongodb基本查询,条件查询,sort,集合方法
三.基本查询: db.coll.find(query,projection).pretty() //pretty将查找的结构标准格式化显示
db.coll.find({sex:"lv"}).pretty();
db.coll.findOne({sex:"lv"}).pretty() 四.mongodb 创建索引
createIndex() 1升序,-1降序
dropIndex
db.coll.getIndexes();五.条件查询: db.coll.find({key1:value1,key2:value2}).pretty()
1.条件操作符:db.col.find({$or:[{age:18},{sex:"nan"}]});
2$type操作符: 是基于bson类型来检索集合中匹配的数据类型,返回结果。
> $gt
<$lt
>=$gte
<=$ltedb.coll.find({key1:{$lt:18}});
db.coll.find({name:{$type:2}}) 查询name对应的值为字符的数据返回;2=字符类型,1=数字类型
double 1
六.limit,skip,sort方法:
limit: 行限定,读取指定行的数据 db.coll.find().limit(5)
skip: 跳过指定数量行的数据:db.coll.find().limit(4).skip(2);
sort: 排序:1升序,-1降序
db.coll.find().sort({keq:1})
db.coll.find().count()七.聚合方法:统计平均值求和,最大值,并返回结果等aggregate
db.coll.aggregate([{管道:{聚合操作表达式} }]) 管道:把聚合操作表达式找到的数据进行过滤操作
$progject
$match:条件
$limt:
$skip
$group
$sort聚合操作表达式:
$sum
$avg
$max
$mindb.coll.aggregate(
[
{
$group:{_id:"$字段名",聚合函数的别名:{$聚合操作表达式:"$字段名"}}
}
]
)//统计男生和女生的总成绩
db.coll.aggregate(
[
{
$group:{_id:"$sex",sumgrade:{$sum:"$grade"}}
}
]
)//统计学生的总数和平均分
db.coll.aggregate(
[
{
$group:{_id:null,renshu:{$sum:1},avggrade:{$avg:"$grade}}
}
]
)//查看 年龄大于20的2条记录
db.col.aggregate(
[
{
$match:{age:{$gte:20}}
},
{
$limit:2
}
]
)//查看 男生的最高成绩
db.col.aggregate(
[
{
$match:{sex:"男"}
},
{
$group:{_id:"$sex",maxgrade:{$max:"grade"}}
}
]
)//只查询name,age
$project: 字段名:1 获取该字段的所有内容
db.col.aggregate(
[
{
$project:{name:1,age:1)
}
]
)
//查询分数>70 <90的人数
db.col.aggregate(
[
{
$match:{grade:{$gt:70,$lte:90}}
},
{
$group:{_id:"$sex",renshu :{$sum:1}}
}
]
)八。.mongodb 数据库恢复和备份:
备份
mongodump -h 127.0.0.1 -d mytest -o c:\users\denny\desktop\beifen恢复
mongorestore -h 127.0.0.1 d mytest c:\users\denny\desktop\beifen\mstest