Создать представление из нескольких баз данных

Я узнал об использовании db.siblingsDB и db.sisterDB. Но я не могу использовать оба в создании представления из разных баз данных.

Мой пример запроса, который я пробовал:

use "database1"
var users = db.getSiblingDB("database2").getCollection("User").find({})
    db.runCommand({
        "create" : "VW_User",
        "viewOn" : users,
        "pipeline" : [ 
            {
                "$lookup" : {
                    "localField" : "loginName",
                    "foreignField" : "userList.loginName",
                    "from" : "Site",
                    "as" : "User&Site"
                }
            }, 
            {
                "$unwind" : "$User&Site"
            }, 
            {
                "$unwind" : "$User&Site.userList"
            },
            {
                "$project" : {
                    "_id" : 0,
                    "userId" : "$_id",
                    "userRole" : "$User&Site.userList.role",
                    "siteId" : "$User&Site.id",
                    "active" : "$active",
                    "connectedAtTime" : "$connectedAtTime",
                    "lastMessageTime" : "$lastMessageTime"
                }
            }
        ]
    })

Но это не работает. Кто-нибудь, пожалуйста, скажите мне, возможно ли это или нет.

0 ответов

Другие вопросы по тегам