子数据我已经查询出来了就是图中的userLikeUrl_as,但是不知道如何把userLikeUrl_as的数据聚合成count,如:userLikeUrl_as: 3,而不是把所有字段全部查询出来,有人知道吗
暂时的解决方式:
ProjectionOperation projectionOperation = Aggregation.project("uid", "userName", "userAvatar", "action", "objectType", "objectOthers",
"createdDt", "url_as")
.andExpression("toString(objectId)").as("objectId")
.and(filter("userLikeUrl_as").as("item").by(ComparisonOperators.Eq.valueOf("item.valid").equalToValue(1))).as("userLikeUrl_as_list");
ProjectionOperation projectionOperation2 = Aggregation.project("uid", "userName", "userAvatar", "action", "objectType", "objectOthers", "createdDt", "url_as", "objectId")
.andExpression("{$size: '$userLikeUrl_as_list'}").as("userLikeUrl_count");
使用$sum在分组、或者project阶段进行转换
https://www.mongodb.com/docs/...