欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MongoDB 使用aggregate做join连接 并保留第一个join结果(二)

程序员文章站 2022-05-08 16:10:02
...
db.主表.aggregate([
    {
        "$lookup": {
            "localField": "主键",
            "from": "从表",
            "foreignField": "外键",
            "as": "结果集字段名称a"
        }
    }
    ,
    {
        "$project": {
            "_id": 0,
            "id": 1,
            "type": 1,
            "startNode": 1,
            "startKeyNo": 1,
            "endKeyNo": 1,
            "endNode": 1,
            "role": 1,
            "结果集字段名称a": {
                $slice: ["$结果集字段名称a", 1]
            }
        }
    }
    ,
    {
        "$unwind": "$结果集字段名称a"
    } 
    ,

    {
        $project: {
            "id": 1,
            "type": 1,
            "startNode": 1,
            "startKeyNo": 1,
            "endKeyNo": 1,
            "endNode": 1,
            "role": 1,
            "start_node_name": "$结果集字段名称a.name",

			"start_node_labels": "$结果集字段名称a.labels"
        }
    }
    ,
    {
        $out: "集合输出目标集合名称"
    }
])

 

 

 

MongoDB 使用aggregate做join连接 并保留第一个join结果(二)

相关标签: MongoDB