MongoDB 基础

Posted 氐惆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 基础相关的知识,希望对你有一定的参考价值。

MongoDB 的 rbac

 

增:

不推荐:

db.tablename.insert([{}],{})

官方推荐:

db.tablename.insertOne({})

db.tablename.inserMany([{},{}])

 

 

删:

不推荐:

db.tablename.remove({})

官方推荐:

db.tablename.deletOne({条件}) # 删除符合条件的第一条

db.tablename.deletMany({条件}) # 删除符合条件的所有

 

改:

不推荐:

db.tablename.update({},{$set:{field:value}})

官方推荐:

db.tablename.updateOne({},{$set:{}})

db.tablename.updateMany({},{$set:{}})

 

修改器:

$set # 暴力修改
$unset # 强制删除字段
$inc +1/-1 # 引用增加

 

Array修改器:

$push 

# list中的append 追加数据 

updateOne({},{$push:{list:1}})


$pull 

# list中的remove 删除某元素 

updateOne({},{$pull:{list:1}})


$pushAll 

# list中的extends 迭代追加最后追加数据 

updateOne({},{$pushAll:{list:[1,2,3]}})


$pop 

# list中的pop 删除第一个元素或者最后一个元素 

updateOne({},{$pop:{list:-1}}) / updateOne({},{$pop:{list:1}})

 

$ —— 符合条件的下表 —— array 当中

[1,4,5,2,1] $=0

updateOne({list:1},{$set:{"list.$":6}})

# 存储符合条件元素的下标索引,只能存放一个下标 - 只能存放符合条件第一个

 

查:

db.tablename.find({})

fb.tablename.findOne({})

 

并列条件:

find({"name":"1","age":2})

# 或条件 - 不同字段的或

$or findOne({$or:[{"name":"1"},{"age":2}]})

 

子集 位置可以发生变化:

$in findOne({"age":{$in:[1,2,3,4,5]}})

 

完全符合 位置可以发生变化:

$all findOne({"age":{$all:[1,2,3,4]}})

 

 

sort limit skip

find({"age":{$all:[1,2,3,4]}}).sort({"key":-1})

find({"age":{$all:[1,2,3,4]}}).limit(5) # 只显示当前位置向下5条

find({"age":{$all:[1,2,3,4]}}).skip(5) # 跳过五条数据,决定当前位置

 

优先级

find({"age":{$all:[1,2,3,4]}}).sort({"key":-1}).skip(5).limit(5)

 

以上是关于MongoDB 基础的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB PHP

ios - Heroku 和 MongoDb 上的自定义解析服务器错误 3080:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

[Go] 通过 17 个简短代码片段,切底弄懂 channel 基础

mongodb关联查询

无法在 MongoDB(猫鼬)文档中追加数组

201555332盛照宗—网络对抗实验1—逆向与bof基础