Pivot embedded documents keys to it's own document (column in Table View) Mongo

谁说我不能喝 提交于 2020-01-16 19:35:10

问题


I have a set of documents like:

{ 
"_id" : ObjectId("53ad60c1600f5b241c693ce2"), 
"items" : [
    {
        "EffDate" : ISODate("2014-05-01T00:00:00.000+0000"), 
        "PlanProductCode" : "317", 
        "PlanProduct" : "Medicare SNP", 
        "BenefitPackage" : "SUPERIOR HEALTH PLAN INC, SU MEDICARE ADVANTAGE PLAN", 
        "EndDate" : ISODate("9999-12-31T00:00:00.000+0000")
    }, 
    {
        "EffDate" : ISODate("2014-05-01T00:00:00.000+0000"), 
        "PlanProductCode" : "317", 
        "PlanProduct" : "Medicare SNP", 
        "BenefitPackage" : "SUPERIOR HEALTH PLAN INC, SU MEDICARE ADVANTAGE PLAN", 
        "EndDate" : ISODate("2015-04-30T00:00:00.000+0000")
    }, 
    {
        "EffDate" : ISODate("2015-05-01T00:00:00.000+0000"), 
        "PlanProductCode" : "3120", 
        "PlanProduct" : "TX Duals", 
        "BenefitPackage" : "TX MEDICARE DUALS", 
        "EndDate" : ISODate("2016-11-30T00:00:00.000+0000")
    }
]
}

I want each key from the array of documents to be its own document. More specifically, If I were to view it in a table view, each "_id" would have a column for each "EffDate", each "PlanProductCode" ect.. I dont want to unwind because I will lose the unique _id. And I dont want there to be any "item" element. It would look something like:

{ "_id" : ObjectId("53ad60c1600f5b241c693ce2"),
    {"EffDate" : ISODate("2014-05-01T00:00:00.000+0000")},
    {"PlanProduct" : "Medicare SNP"},
    {"BenefitPackage" : "SUPERIOR HEALTH PLAN INC, SU MEDICARE ADVANTAGE PLAN"},
    {"EndDate" : ISODate("9999-12-31T00:00:00.000+0000"},
    {"EffDate" : ISODate("2014-05-01T00:00:00.000+0000")},
    {"PlanProductCode" : "317"},
    {"PlanProduct" : "Medicare SNP"},
    {"BenefitPackage" : "SUPERIOR HEALTH PLAN INC, SU MEDICARE ADVANTAGE PLAN"},
    {"EndDate" : ISODate("2015-04-30T00:00:00.000+0000")},
    {"EffDate" : ISODate("2015-05-01T00:00:00.000+0000")},
    {"PlanProductCode" : "3120"},
    {"PlanProduct" : "TX Duals"},
    {"BenefitPackage" : "TX MEDICARE DUALS"},
    {"EndDate" : ISODate("2016-11-30T00:00:00.000+0000")}
}

来源:https://stackoverflow.com/questions/59688316/pivot-embedded-documents-keys-to-its-own-document-column-in-table-view-mongo

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!