首页 > 解决方案 > MongoDB - 从文档/集合中仅返回匹配的报告/子节点

问题描述

如何仅从集合和嵌套报告或子对象中投影匹配的节点和文档

  1. cond:没有任何限制,过滤/匹配不限于文档
  2. cond:输出也可以是多条记录,就像我在下面的输入和输出中提到的

输入文件

    {
    "employee_no": 10001,
    "name": "John",
    "reportings": [
        {
            "employee_no": 11001,
            "name": "Jo",
            "reportings": [
                {
                    "employee_no": 11101,
                    "name": "Kim",
                    "reportings": [
                        {
                            "employee_no": 11111,
                            "name": "Sun",
                            "reportings": []
                        }
                    ]
                }
            ]
        },
        {
            "employee_no": 12001,
            "name": "Dom",
            "reportings": []
        }
    ]
}

{
    "employee_no": 10002,
    "name": "Senn",
    "reportings": [
        {
            "employee_no": 10001,
            "name": "Jo",
            "reportings": [
    
            ]
        }
    ]
}

输出

过滤器 - “employee_no”:11101

    {
      "employee_no": 11101,
      "name": "Kim"
    }

过滤器 - "employee_no": {$in: [10001, 10002, 10001 ]}

record#1
{
    "employee_no": 10001,
    "name": "John"
}
record#2
{
    "employee_no": 10002,
    "name": "Senn"
}

过滤“employee_no”:{10001、11001、11101、11111}

{
    "employee_no": 10001,
    "name": "John",
    "reportings": [
        {
            "employee_no": 11001,
            "name": "Jo",
            "reportings": [
                {
                    "employee_no": 11101,
                    "name": "Kim",
                    "reportings": [
                        {
                            "employee_no": 11111,
                            "name": "Sun",
                            "reportings": []
                        }
                    ]
                }
            ]
        }
    ]
}

过滤“employee_no”:{10001、11001}

{
    "employee_no": 10001,
    "name": "John",
    "reportings": [
        {
            "employee_no": 11001,
            "name": "Jo"
        }
    ]
}

标签: mongodbmongodb-queryaggregation-framework

解决方案


推荐阅读