arrays - 使用 $out 来满足此类需求的正确原型是什么?
问题描述
我是 MongoDb 的新手,我想将属于“Tommy”的“销售”的详细信息保存在一个名为“result1”的新集合中。我处理的集合如下:
"food seller" : {
"seller" : "Tommy",
"sellings" : [
{
"FOOD" : {
"food name" : "Rice"
}
},
{
"FOOD" : {
"food name" : "Noby",
}
}
]
}
我尝试了以下方法,但毫无疑问,它们将不起作用。不正确!
db.collection.aggregate([ {$project:{"food seller.seller":"Tommy"}}, {$out:"result1"}]);
db.collection.aggregate([ {$project:{"Tommy":"$food seller.seller.sellings"}}, {$out:"result1"} ]);
db.collection.aggregate([ {$project:{"food seller.seller":"Tommy"}}, {$out:"result1"}]);
我知道我的问题是没有得到正确的原型来满足这种要求。意思是,上面的那些代码不是处理“销售”数组,它们只是处理“卖家”。
总而言之,希望将“Tommy”的“销售”数组放入名为“result1”的获胜集合中。
解决方案
db.collection.aggregate([{$match:{"food seller.seller":"Tommy"}},{$project:{"food seller.sellings.FOOD":1}},{$out:"result"}]);
此代码将属于“Tommy”的“销售”数组内容提取到一个名为“result”的新集合中。因此,如果您编写,db.result.find({});
您将单独查看该数组。——</p>
推荐阅读
- sql - SQL中的查询和事务有什么区别?
- ios - 在 SwiftUI 中滚动时导航栏闪烁
- javascript - 具有范围验证的印度货币输入字段
- reactjs - Git警告:嵌入回购
- python - 为什么这个错误 AttributeError: 'NoneType' object has no attribute 'shape'
- sql - 当值为 NULL 时从其他表更新 SQL
- dart - Dart“--no-sound-null-safety”标志不起作用
- sql-server - 在 Docker 上安装 mssql 容器时出错
- node.js - 与角度的套接字连接不起作用
- python - 插入 / 并将 yymmdd 反转为 ddmmyy