Python 查询不包含';t存在于其他集合mongodb中

Python 查询不包含';t存在于其他集合mongodb中,python,mongodb,pymongo,Python,Mongodb,Pymongo,有两个集合(订单、产品) 我需要在orders集合中生成一个products集合中不存在的产品列表,这样我就可以在python中使用这些结果从API中获取缺少的信息 这就是我需要的: 收款单示例文档: { 订单号:1, 产品编号:“PROD001”, }, { 订单号:2, 产品编号:“PROD002”, }, { 订单号:3, 产品编号:“PROD002”, }, { 订单号:4, 产品编号:“PROD003”, } 收集产品示例文档: { 产品编号:“PROD001”, 名称:“产品编号0

有两个集合(订单、产品)

我需要在orders集合中生成一个products集合中不存在的产品列表,这样我就可以在python中使用这些结果从API中获取缺少的信息

这就是我需要的:

收款单示例文档:

{
订单号:1,
产品编号:“PROD001”,
},
{
订单号:2,
产品编号:“PROD002”,
},
{
订单号:3,
产品编号:“PROD002”,
},
{
订单号:4,
产品编号:“PROD003”,
}
收集产品示例文档:

{
产品编号:“PROD001”,
名称:“产品编号01”,
},
{
产品编号:“PROD002”,
名称:“产品编号02”,
}
我需要用python生成的列表

notfound=["PROD003"]

您可以得到如下结果:

[
{
“产品标识”:“PROD003”
}
]
使用下面的聚合波纹管:

db.orders.aggregate([
{
“$lookup”:{
“来自”:“产品”,
“localField”:“产品标识”,
“外域”:“产品id”,
“as”:“产品”
}
},
{
“$match”:{
“产品”:{
“$size”:0
}
}
},
{
“$project”:{
“_id”:0,
“产品标识”:1
}
}
])