【问题标题】:Count Like of Comment点赞评论
【发布时间】:2013-01-28 18:46:01
【问题描述】:
收藏状态: [ { _id: '1', 状态名称:'....', 评论: [ { id_: '2', 评论名称:'.....', 喜欢:['user1', 'user2', 'user3'] }, { id_: '3', 评论名称:'.....', 喜欢:['user2', 'user3'] } ] }, { _id:'3', 状态名称:'....', 评论: [ { id_: '4', 评论名称:'.....', 喜欢:['user1', 'user2', 'user3', 'user4'] }, { id_: '5', 评论名称:'.....', 喜欢:['user1', 'user3'] } ] } ]

我要计数 喜欢的评论 _id = '2' 和状态 _id: '1'

【问题讨论】:

  • 好。您是否已经尝试过?

标签: mongodb


【解决方案1】:

一种方法是使用聚合框架:

db.status.aggregate(
[
  {$match : {_id : "1", }}, 
  {$unwind: "$Comments"}, 
  {$match: {"Comments.id_": "2"}},
  {$unwind: "$Comments.Likes"},
  {$group: {_id: {"statusId":"$_id","CommentId":"$Comments.id_"}, 
            "likes": {$sum:1}}
  }
] )

【讨论】:

    猜你喜欢
    • 2015-06-16
    • 2011-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-25
    • 2012-03-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多