2017-01-03 132 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和聊天計數。