MongoDB aggregation $unwind

MongoDB aggregation $unwind,第1张

概述介绍《MongoDB aggregation $unwind》开发教程,希望对您有用。

《MongoDB aggregation $unwind》要点:
本文介绍了MongoDB aggregation $unwind,希望对您有用。如果有疑问,可以联系我们。

《MongoDB aggregation $unwind》是否对您有启发,欢迎查看更多与《MongoDB aggregation $unwind》相关教程,学精学透。内存溢出PHP学院为您提供精彩教程。

$unwind的作用是将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值.

官方文档地址: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" }

总结

以上是内存溢出为你收集整理的MongoDB aggregation $unwind全部内容,希望文章能够帮你解决MongoDB aggregation $unwind所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1152206.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存