Monodb 基本命令 查询命令
db.articel.aggregate([{"$match": {"author": {"$eq": ObjectId(author_id)}}}, {
"$group": {"_id": {"from_source": "$from_source"}, "num_count": {"$sum": 1}}}, {
"$group": {"_id": {"from_source": "$_id.from_source"}, "distance": {"$sum": 1}}}, {"$skip": 1}, {"$limit": 6}])
MongoDB的聚合管道将MongoDB文档在一个管道处理完毕后将结果传递给下一个管道处理。管道操作是可以重复的。
表达式:处理输入文档并输出。表达式是无状态的,只能用于计算当前聚合管道的文档,不能处理其它的文档。
$match:用于过滤数据,只输出符合条件的文档。$match使用MongoDB的标准查询操作。
$limit:用来限制MongoDB聚合管道返回的文档数。
$skip:在聚合管道中跳过指定数量的文档,并返回余下的文档。
$group:将集合中的文档分组,可用于统计结果。
按照from_source 进行分组 后统计from_source不相同的的信息及个数 以author $eq 作为筛选条件
Python Mongo sort 注意
db.article.find({"author": ObjectId(author_id), "source_name": platform},
{"hash_id": 1, "img": 1, "title": 1, "read_count": 1, "comment_num": 1,
"publish_time": 1}).sort([{"insert_time", -1}]).skip(1).limit(4)
Mongodb修改数据库名称:
db.copyDatabase('old_name', 'new_name');
use old_name
db.dropDatabase();
# 比较粗暴好用的方法
Mongo性能参考 此文