加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

MongoDB $aggregate $push Java Spring Data中的多个字段

发布时间:2020-12-15 01:38:10 所属栏目:大数据 来源:网络整理
导读:我有一个mongo聚合组查询: db.wizard.aggregate({$group: { _id: "$title",versions: { $push: {version:"$version",author:"$author",dateAdded:"$dateAdded"}} }}) 我在Java Spring-Data-MongoDB中需要这个查询,我目前的解决方案如下所示: Aggregation a

我有一个mongo聚合组查询:

db.wizard.aggregate(
{
$group: {
    _id: "$title",versions: { $push: {version:"$version",author:"$author",dateAdded:"$dateAdded"}}
    }
})

我在Java Spring-Data-MongoDB中需要这个查询,我目前的解决方案如下所示:

    Aggregation agg = Aggregation.newAggregation(
            Aggregation.group("title").
                    push("version").as("versions")
    );

问题是我不知道如何为push方法添加更多字段(版本,作者,dateAdded).
是否可以使用Spring-Data-MongoDB?

最佳答案
您可以直接将BasicDbObject传递给任何聚合管道阶段.

Aggregation agg = newAggregation(
            group("title").
            push(new BasicDBObject
                   ("version","$version").append
                   ("author","$author").append
                   ("dateAdded","$dateAdded")).as("versions"));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读