2017-01-03 39 views
0

如何同时使用$项目如何找到对象数组的长度在MongoDB中

{ $project: { 'chatCount' : {$size:"messages.chats"} } 

这里的消息是数组通过$查找返回来获取数组的长度。

此仅给出了长度为 '1'

消息包含 - > messages.chats [0],[1],[2]如..内阵列

我怎样才能聊天的长度(比方说3以上)通过$大小或理解的任何其他

响应..

+0

在messages.chats的地方使用“messages.chats.length”。 – Anshul

+0

你可以在没有$ project阶段的情况下发布你的聚合查询的输出吗? – felix

+0

添加$ unwind阶段。 '{$ unwind:“$ message.chats”}'项目阶段前 – Veeram

回答

0

在第一放松的聊天然后项目聊天和_id,然后使用组这样

{ 
    $group : { _id: {"id":"$_id"} , 
      Count :{$sum: 1} 
} 

用这段代码你有每个Id和聊天计数。