Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Mongodb在从到ObjectId的\u id字段上联接_Python 3.x_Mongodb - Fatal编程技术网

Python 3.x Mongodb在从到ObjectId的\u id字段上联接

Python 3.x Mongodb在从到ObjectId的\u id字段上联接,python-3.x,mongodb,Python 3.x,Mongodb,我有两套 报告 {“品牌”:“耐克”,“创建”:“2021-05-03T20:12:32.911000”,“id”:ObjectId(“60929848088f18212809221c”)} 地位 {“id”:“60929848088f18212809221c”,“report”:ObjectId(“60929848088f18212809221c”),“created”:“2021-05-05T20:12:32.911000”} 我想根据报表(状态集合中)——\u id(报表集合中)加入这

我有两套

  • 报告

    {“品牌”:“耐克”,“创建”:“2021-05-03T20:12:32.911000”,“id”:ObjectId(“60929848088f18212809221c”)}

  • 地位

    {“id”:“60929848088f18212809221c”,“report”:ObjectId(“60929848088f18212809221c”),“created”:“2021-05-05T20:12:32.911000”}

  • 我想根据报表(状态集合中)——\u id(报表集合中)加入这些集合

    我尝试了下面的查询(这里的代码很复杂,因为它还做了一些我需要做的事情):

    我期待这样的结果:

    [
      {
        "count": 3,
        "data": [
          {
            "_id": ObjectId("5a934e000102030405000001"),
            "data": {
              "_id": ObjectId("5a934e000102030405000001"),
              "brand": "Nike",
              "created": "2021-05-03T20:12:32.911000",
            },
            "report": {
                "_id": ObjectId("5a934e000102030405000003"),
                "created": "2021-05-05T20:12:32.911000",
                "id": "60929848088f18212809221c",
                "report": ObjectId("5a934e000102030405000001")
            },
          },
          }
        ]
      }
    ]
    
    我的意思是,我的意思是每一个结果都会如此

    我也试图得到帮助,但没有成功。
    我使用的是Mongo DB 4+

    只需尝试在localField中传递
    “data.data.id”
    。不起作用,可能是因为我使用的是“self.reports.aggregate(query)”?请看,使用它仍然不起作用,但我的意思是每次检索的结果,例如:[{“count”:1,“data”:[{“\u id”:ObjectId(“5A934E0001020030405000000”),“data”:{“id”:ObjectId(“5A934E0001020340500000”),“品牌”:“耐克”,“创建”:“2021-05-03T20:12:32.911000”,“id”:ObjectId(“60929848088f18212809221c”),“报告”:[{“\u id”:ObjectId(“5A934E0001020340500001”),“创建”:“2021-05-05T20:12:32.911000”,“id”:“609298480888F18212809221C”,“报告”:ObjectId(“609298480888F18212809221C”),]你的问题不清楚,您可以编辑您的问题,并请详细说明。发布一些示例文档和预期结果。
    [
      {
        "count": 3,
        "data": [
          {
            "_id": ObjectId("5a934e000102030405000001"),
            "data": {
              "_id": ObjectId("5a934e000102030405000001"),
              "brand": "Nike",
              "created": "2021-05-03T20:12:32.911000",
            },
            "report": {
                "_id": ObjectId("5a934e000102030405000003"),
                "created": "2021-05-05T20:12:32.911000",
                "id": "60929848088f18212809221c",
                "report": ObjectId("5a934e000102030405000001")
            },
          },
          }
        ]
      }
    ]