首页 > 解决方案 > MongoDb $merge 没有向集合添加/更新数据

问题描述

我尝试在聚合方法中使用 $merge 函数。我按照文档中的建议在聚合管道的最后包含了 $merge 函数。但是当我尝试执行它时,在 mongo shell 中出现此错误

MongoError: Failed to retrieve database or collection name from $merge. err=Error parsing $merge value. err=not bson string Ranks
    at mongodb/mongonet@v0.0.0-20210305130450-5aed3aa353c3/bsonutil.go:137
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/session_proxy.go:1595
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/commands_security.go:1252
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/commands.go:1306
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/commands.go:1192
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/session_proxy.go:841
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/session_proxy.go:548
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/session_proxy.go:1426
    at fbe0a95f5df59bca2215eab28e6856ca/atlasproxy/session_proxy.go:974
    at mongodb/mongonet@v0.0.0-20210305130450-5aed3aa353c3/proxy_session.go:418
    at mongodb/mongonet@v0.0.0-20210305130450-5aed3aa353c3/proxy_session.go:122
    at mongodb/mongonet@v0.0.0-20210305130450-5aed3aa353c3/session.go:94
    at src/runtime/asm_amd64.s:1374

聚合函数工作正常并按预期产生结果。但只有 $merge 不起作用。请帮助解决这个问题

我正在尝试使用这样的合并:

db.collections.aggregate([


...


{ $merge: 'Ranks'}


])

注意:我的数据库包含 Ranks 集合,我正在使用 cloud mongo

标签: node.jsmongodbmongoosemongodb-queryaggregation-framework

解决方案


推荐阅读