mongo views
db.itemsView.drop();
db.items.aggregate([
{
"$match": {
"status": "true"
}
},
{
"$unwind": {
"path": "$globalOptions",
"preserveNullAndEmptyArrays": true
}
},
{
"$lookup": {
"from": "globaloptiongroups",
"localField": "globalOptions",
"foreignField": "_id",
"as": "globaloptiongroups"
}
},
{
"$unwind": {
"path": "$globaloptiongroups",
"preserveNullAndEmptyArrays": true
}
},
{
"$group": {
"_id": "$_id",
"globaloptiongroups": {
"$push": "$globaloptiongroups"
},
"name": {
"$first": "$name"
},
"merchantId": {
"$first": "$merchantId"
},
"customerOptions": {
"$first": "$customerOptions"
},
"properties": {
"$first": "$properties"
},
"price": {
"$first": "$price"
},
"picture": {
"$first": "$picture"
},
"description": {
"$first": "$description"
},
"category": {
"$first": "$category"
},
"order": {
"$first": "$order"
}
}
},
{
"$project": {
"_id": 1,
"name": 1,
"merchantId": 1,
"options": 1,
"price": 1,
"picture": 1,
"description": 1,
"category": 1,
"order": 1,
"groupOptions": {
"$setUnion": [
"$groupOptions",
"$customerOptions"
]
}
}
},
{
"$sort": {
"order": 1
}
}
]).saveAsView("itemsView");
最新文章
- Hawk 4. 数据清洗
- TableView 滑动收起键盘
- RubyOnRails local_assigns
- 可视化日历_Java实现
- PictureCutting图片批量裁切(裁剪)工具
- spring mvc 配置文件信息记录
- JMM &; synchronized概述(转)
- Microsoft Visual C++ Runtime Library Runtime Error的解决的方法
- javaZIP压缩文件
- Android_HTML解析器_jsoup
- 将字符串变成大写----C++实现
- java 小数点取2位并且四舍五入
- 互联网金融P2P主业务场景自动化测试
- Gradle 1.12用户指南翻译——第二十六章. War 插件
- GPIO8种方式小总结
- Ts基础
- layout 布局、手风琴accordion、选项卡tabs【转载】
- Django创建模型,迁移数据
- 前端代码在线调试&;分享网站
- AutoFac简介