【问题标题】:how to join two tables in mongodb如何在mongodb中连接两个表
【发布时间】:2015-04-27 06:54:38
【问题描述】:

如何在 mongodb 中连接两个表。

例如, 表 1:用户 表 2:示例

这里 users 表有用户名,examples 表也有用户名,那么如何在 php 中使用 mongodb 组合两个表字段。

请解释查询。

谢谢,

【问题讨论】:

标签: php mongodb


【解决方案1】:

不幸的是,MongoDB 中没有直接的合并/加入操作。无论如何,您可以使用 map-and-reduce 功能来适当地组合数据。

根据您的实际问题,以下链接可能会有所帮助:

MongoDB: Combine data from multiple collections into one..how?

Merging two collections in MongoDB

http://www.pal-blog.de/entwicklung/mongodb/mapreduce-multiple-mongodb-collections-into-one.html

https://groups.google.com/forum/#!topic/mongodb-user/OQUH_wxYyRg

https://groups.google.com/forum/#!topic/mongodb-user/qxa7ZBTk7sQ

【讨论】:

  • shariq 提供的不错的链接
【解决方案2】:

我个人建议您在开始之前停止使用 Map Reduce(参考其他答案)。

作为一个必须在实际生产应用程序中执行 MongoDB JOIN 的人,我可以告诉您,Map Reduce 可能是这个解决方案所能想象的最糟糕的方法。

早在 2012 年,现在就是这样。

在当前版本的 MongoDB 中唯一的好处是许多隔离可以同时运行,而不是一次只运行一个(想象一下 2012 年跨所有连接的单线程 JOIN :\,这是一个糟糕的想法)。

您希望在客户端实现这一点,从不同的集合中一次性提取所有记录并将它们合并到您的应用程序逻辑中。这是在 MongoDB 中扩展 JOIN 的唯一真正可靠的方法。

【讨论】:

    【解决方案3】:

    在 mongodb 中没有什么比 join 更好的了

    检查下面的答案

    MongoDB: Combine data from multiple collections into one..how?

    【讨论】:

      猜你喜欢
      • 2023-01-24
      • 1970-01-01
      • 2020-05-11
      • 2018-11-08
      • 2021-11-20
      • 2018-02-19
      • 2014-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多