mongodb在项目中使用越来越觉得日志方面的记录和查询是远远优于MySQL的,所以对其一些基本的操作进行了整理,以下就是整理的一些规则
插入数据: insert
插入多组数据:inserrAll
修改数据: update
修改多组数据:updateMany
查询数据:find
聚合查询:aggregate
查询总数:count
查询分页:limit
跳过指定条数:skip
update参数:db.collection.update(query, update, options)
其中,query表示:更新的条件,update表示:待更新的内容,options表示:更新选项(比如,条件不匹配时,进行插入)
删除数据: remove
修改数组: update.$push update.$pull
因为在使用时是在php中使用的,所以json的格式没有转换,而是使用的php的数组,需要使用的朋友可以自行转换
聚合查询查找不等于:ex:['$match'=>['subject'=>['$ne'=>'首页']]]
数据库in实现:'action' => [
'$in'=>[
'delete',
'create'
]
]
数据库aggregate查询 :aggregate(
[
[
'$match'=>[
'$or'=>[
['property.market'=>[
'$in'=>['US']
]],
['property.client'=>[
'$in'=>['pc_web']
]]
]
]
]
]);
很多人不喜欢在Mongo中使用原生的_id,主要原因是转换比较麻烦,这里我们使用扩展库yii2-mongodb,以下是一个转化的例子
原生id使用:['_id' =>new \MongoDB\BSON\ObjectID($id)],