MongoDB aggregation $unwind
《MongoDB aggregation $unwind》要点: 《MongoDB aggregation $unwind》是否对您有启发,欢迎查看更多与《MongoDB aggregation $unwind》相关教程,学精学透。编程之家PHP学院为您提供精彩教程。
官方文档地址:https://docs.mongodb.com/manual/reference/operator/aggregation/unwind/ 比如文章信息有标签tags,值有java,mongodb,spring { "_id": 1001, "tags": [ "java", "mongodb", "spring" ] } 假如我们要将tags拆分显示,也就是每个tag都显示成一条单独的数据 db.article_info.aggregate( { $unwind : "$tags" }) 结果如下: { "_id" : 1001,"tags" : "java" } { "_id" : 1001,"tags" : "mongodb" } { "_id" : 1001,"tags" : "spring" } 假如我们的需求是统计每个tag出现的次数 这个时候就需要用到先将$unwind tags拆分,然后根据具体的tag来做分组统计 > db.article_info.aggregate( ... { $unwind : "$tags" }, ... { $group : { "_id" : "$tags","count" : { $sum : 1 } } }, ... { $project : { "tag" : "$_id","count" : 1 } } ... ) 结果如下: { "_id" : "spring","count" : 1,"tag" : "spring" } { "_id" : "mongodb","tag" : "mongodb" } { "_id" : "java","tag" : "java" } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |