【问题标题】:Get Array element from JSON array from mongodb document从 mongodb 文档的 JSON 数组中获取数组元素
【发布时间】:2016-09-28 18:54:02
【问题描述】:
{
"employees" : [ 
    {
        "name" : "XXX",
        "id" : "1",
        "Salary" : [ 
            {
                "Month" : "XXXX",
                "Amount" : "XXXX",
            }, 
            {
                "Month" : "XXXX",
                "Amount" : "XXXX",
            }, 
            {
                "Month" : "XXXX",
                "Amount" : "XXXX",
            }
        ]
    }, 
    {
        "name" : "YYY",
        "id" : "2",
        "Salary" : [ 
            {
                "Month" : "YYYY",
                "Amount" : "YYYY",
            }, 
            {
                "Month" : "YYYY",
                "Amount" : "YYYY",
            }, 
            {
                "Month" : "YYYY",
                "Amount" : "YYYY",
            }
        ]
    }
],
}

这是 mongodb 文档中 json 格式的示例。 我想从按名称搜索的员工数组中将结果作为一个特定元素获取 这些方法我都试过了

db.abc.find({"employees.name": "XXX"},{employees: {$elemMatch: {name: "XXX"}}});

db.abc.find({ employees: { $elemMatch: { name: "XXX"} } })

这些都不行。这些方法会给出整个文档。谁能给我一个解决方案。

【问题讨论】:

    标签: json mongodb


    【解决方案1】:

    试试这个

    db.abc.find({"employees.name": "XXX"},{"employees.$":1})
    

    【讨论】:

    • 嗯。这样可行。你能帮我做这个索引吗
    • 请详细说明你想做什么?
    • 使用索引搜索此内容
    • 您必须先设置索引 db.abc.ensureIndex({"employees.name" : 1})。
    猜你喜欢
    • 2016-09-01
    • 2018-10-23
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多