【问题标题】:how to write mergeObjects aggregation in spring mongo如何在spring mongo中编写mergeObjects聚合
【发布时间】:2021-01-07 09:18:59
【问题描述】:

我写了一个shell,它在mongo控制台中运行良好,我想知道如何在spring mongo中编写Java代码。我尝试了很多方法都没有成功,任何帮助将不胜感激。

db.getCollection('Application').aggregate([

  {$match: {"applicationId":"2021010706001"}},
  {$group: { _id: "$applicationId", mapData: { $mergeObjects: "$mapData" } } },
  {$replaceRoot: { newRoot: "$mapData" } }
])

【问题讨论】:

标签: mongodb spring-data-mongodb


【解决方案1】:

终于搞定了,如下:

        Aggregation aggregation = Aggregation.newAggregation(
                Aggregation.match(Criteria.where("applicationId").is(applicationId)),
                Aggregation.group("applicationId").addToSet("mapData").as("mapData"),
                Aggregation.project("mapData"),
                Aggregation.replaceRoot().withValueOf(
                        ObjectOperators.valueOf("mapData").merge())
        );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    • 1970-01-01
    • 1970-01-01
    • 2017-05-02
    相关资源
    最近更新 更多