【问题标题】:Query for all documents in a database and not any specific collection in mongoose [duplicate]查询数据库中的所有文档,而不是猫鼬中的任何特定集合[重复]
【发布时间】:2017-07-07 15:51:19
【问题描述】:

我想搜索和更新任何与特定 id 匹配的文档,但不想指定任何特定集合,但搜索需要查询特定数据库中的所有文档。

一种 db.find() 不是 db.collection.find();

我在 mongoose 中可能忽略的任何命令可以完成此操作?

【问题讨论】:

  • 您确实应该考虑拥有一个包含所有ids 的集合,将id 映射到一个集合。或者考虑使用 id,其中包含嵌入在 id 中的集合标识符。
  • 注意,同一个_id的不同文档可以在多个集合中。

标签: javascript mongodb mongoose nosql


【解决方案1】:

没有 db.find() 这样的东西。 _id 仅在特定集合中是唯一的。您可以在不同的集合中拥有内容不同但_id 相同的不同文档。

但是您可以做的是使用db.getCollectionNames() 获取所有集合的列表并查询每个集合。

顺便说一句:我不知道你想要达到什么目的,但我觉得它真的很香。集合应该用于对属于特定上下文的对象进行分组。当您不知道要搜索的对象的集合时,您可能做错了什么。

【讨论】:

    猜你喜欢
    • 2018-01-26
    • 1970-01-01
    • 2014-12-21
    • 2022-09-24
    • 1970-01-01
    • 2017-11-27
    • 2021-05-11
    • 1970-01-01
    • 2013-10-21
    相关资源
    最近更新 更多