MongoDB:如何通过汇总使用父记录对记录总计进行分组

时间:2019-07-03 23:18:04

标签: mongodb mongodb-query

我不知道如何编写查询以向我显示按目录分类的销售数据。 试图弄清楚如何查看按目录/商品代码分类的所有已售商品。 目录具有一个包含所有项ID的子文档,以及它们与目录关联的代码。多个目录可以具有相同的项目,但是它们可以具有不同的catalog_item代码。

我已经能够通过执行多个查询并将数据拼接在一起来获取此信息。但是这条路线是次优的。关于如何在单个查询中格式化此数据的任何建议?

enter image description here

以下是该模式的概述:

    // collection: Catelog
"_id" : "GUID",
"name" : "Catalog Name",
"status" : boolean,
"itemCodes" : [

    {
        "id" : "Items._id",
        "code" : "A"
    },
    {
        "id" : "Items._id",
        "code" : "B"
    },
    {
        "id" : "Items._id",
        "code" : "C"
    },
    {
        "id" : "Items._id",
        "code" : "D"
    },
]
}

// collection: Orders
{
"_id" : "GUID",
"consumerId" : "GUID",
"userId" : "GUID",
"lineItems" : [
    {
        "catalogId" : "GUID",
        "itemId" : "GUID",
        "name" : "Item Name",
        "quantity" : Number,
        "cost" : Number,
        "price" : Number
    },
    {
        "catalogId" : "GUID",
        "itemId" : "GUID",
        "name" : "Item Name",
        "quantity" : Number,
        "cost" : Number,
        "price" : Number
    }
],
"paid" : false,
"totalQuantity" : Number,
"totalCost" : Number,
"totalPrice" : Number
}

// collection: Items
{
"_id" : "GUID",
"name" : "NAME",
"code" : "20400",
"description" : "DESCRIPTION",
"cost" : Number,
"price" : Number,
"status" : true
 }

0 个答案:

没有答案
相关问题