"""
conn = pymongo.Connection()
collection = conn.dbname.collection_name
#match用户筛选,相当于sql语句中的where后面的表达式
match = {}
match['date'] = {
'$gte' : '2015-08-21', #大于等于2015年8月21日的
'$lte' : '2015-08-23' #小于等于2015年8月23日的
}
#根据什么来分组 相当于sql语句中的group by语句
group = {}
group['_id'] = "$topic_id" #根据topic_id来分组
group['all_view_ip'] = {
'$sum' : '$$view_ip', #对view_ip字段求和
}
group['all_view_pv'] = {
'$sum' : '$view_pv', #对view_pv字段求和
}
group['date'] = {'$addToSet':"$date"}, #date字段添加到返回结果里面去
#对结果进行排序
sort = {
'all_view_ip' : 1, #all_view_ip来自于上面group当中的key,-1和1分别表示倒序和升序
}
collection.aggregate([match, group, sort])
"""
mongo数据库的操作(aggtegate聚合操作详解)
最新推荐文章于 2024-04-01 09:54:31 发布