db.member.insertOne({"name":"张三","age":18,"create":new Date()})
db.member.insert({"name":"李四1","age":18,"create":new Date()})
db.member.insertOne({"_id":1,"name":"张三","age":18,"create":new Date()})
db.member.insertMany([{"_id":2,"name":"李四","age":18,"create":new Date()},{"_id":3,"name":"王五","age":18,"create":new Date()}])
# 缩写
db.member.find({age:18});
# 完整写法
db.member.find({
age: {
$eq: 18
}
});
# 缩写
db.member.find({_id :{$gt: 2}, age:18});
# 完整写法
db.member.find({
$and: [
{
_id: {
$gt: 2
}
},
{
age: {
$eq: 18
}
}]
})
db.member.find({_id :{$gt: 2}}).sort({_id:-1});
# 跳过第一条后,返回3条数据
db.member.find().skip(1).limit(5);
#假如有数据1,2,3,4,5
#返回 2,3,4
格式:find({查询条件,可以空},{显示的字段:1})
db.member.find({},{age:1})
格式 : db.集合.update(query, update, options)
db.member.update({_id:3},{$set:{age:11}})
db.member.updateOne({_id:3},{$set:{age:11}})
db.member.update({age:19},{$set:{ name:‘zhang1’}},{‘multi’:true});
#要不你换成这样子写,就可以更新多条
db.member.updateMany({age:19},{$set:{ name:‘zhang33’}})
db.member.update({_id:3}, { $set:{ address :‘北京’} } ,{upsert:true})
db.member.findAndModify({query:{name:‘张1’} , update:{ $set:{ ‘age’:18 } } })
db.member.findAndModify({query:{name:‘张1’} , update:{ $set:{ ‘age’:18 } } })
操作符 | 格式 | 描述 |
---|---|---|
$set | { $set : { filed : value} } | 指定一个键,并更新值 |
$unset | { $unset : { filed : 1} } | 删除一个键 |
$inc | { $inc : { filed : value} } | 对数值类型进行增减 |
$push | { $push : { filed : value} } | 将数值追加到数组中,若数组不存在则会进行初始化 |
$pushAll | { $pushAll : { filed : value_array} } | 追加多个值到数组内 |
$pull | { $pull : { filed : value} } | 从数组中删除指定元素 |
$addToSet | { $addToSet : { filed : value} } | 添加元素到数组中,具有排重功能 |
$pop | { $pop : { filed : 1} } | 删除数组第一个或最后一个 |
$rename | { $rename : { old_filed_name : new_filed_name } } | 修改地段名称 |
$bit | { $bit : { filed : {and :5} } } | 位操作,integer类型 |
db.member.deleteOne({_id:2})
db.member.remove({name:‘张1’})
db.member.remove({age:19},true)
db.member.remove({age:19})
或
db.member.deleteMany({age:19})
db.member.remove({})
或
db.member.deleteMany({})
或
db.member.drop()
# remove与deleteMany是对查询范围内的数据逐条删除,drop是删除整个集合(包括全部索引)drop更高效
remove和deleteMany只能按照默认顺序删除,并返回确认信息。findOneAndDelete可以指定顺序删除文档和返回删除的内容
删除并返回
db.member.findOneAndDelete({age:18})
删除指定排序的数据
db.member.findOneAndDelete({age:18},{sort:{_id:-1}})