如何在两个数据库MongoDB C#中查找两个集合的$ lookup

时间:2018-07-24 18:30:25

标签: mongodb aggregation-framework lookup mongodb-.net-driver

同一台服务器上的两个不同数据库中有两个集合。我想知道是否可以使用PipelineDefinition阶段进行汇总查询,在该阶段中可以在第二个数据库中执行$ lookup?

我看到有db.getSiblingDb(),但我不知道如何在管道中使用它。

示例:

Database 1 -> TimeTracking
{
    "_id" : LUUID("ebb81c9e-8df4-c448-8611-5a74b301af4c"),
    "UserId" : NumberLong(1),
    "DateTime" : ISODate("2018-07-24T00:00:00.000Z"),
    "Seconds" : 30
}

Database 2 -> Users

{
    "_id" : NumberLong(1),
    "userName" : "string",
    "firstName" : "string",
    "lasttName" : "string",
    (...)
}

我的目标是返回这样的结构:

UserTotalTime
{
    "userName" : "string",
    "firstName" : "string",
    "lasttName" : "string",
    "Seconds" : 30
}

最终,我想对这些数据进行规范化,但是首先,我需要实现一个事件总线,以使整个数据库中的数据保持最新状态。

0 个答案:

没有答案