Mongodb 部分键搜索

Mongodb 部分键搜索,mongodb,Mongodb,我有一个MongoDB集合,其中包含以下格式的文档: { "_id" : ObjectId("56ec4e1bbf2f16a55f287d31"), "username" : "John Doe", "dates" : { "2014-12-24" : 25 }, } { "_id" : ObjectId("56ec4e1bbf2f16a55f287b32"), "username" : "Jane Doe", "

我有一个MongoDB集合,其中包含以下格式的文档:

{
    "_id" : ObjectId("56ec4e1bbf2f16a55f287d31"),
    "username" : "John Doe",
    "dates" : {
            "2014-12-24" : 25
    },
}

{
    "_id" : ObjectId("56ec4e1bbf2f16a55f287b32"),
    "username" : "Jane Doe",
    "dates" : {
            "2014-12-27" : 92
    },
}

{
    "_id" : ObjectId("56ec4e1bbf2f16a55f198d31"),
    "username" : "Harry Potter",
    "dates" : {
            "2014-01-31" : 25
    },
}

是否可以对
日期执行部分查询
,以便我可以获得12月份的所有记录?例如,我可以执行
db.collection.find({“dates.2014-12-24”:{$exists:1}}})并获取第一个文档,但是是否有任何方法可以执行类似
db.collection.find({“dates.2014-12-*”:{$exists:1})的操作
并同时获取前两个文档?

最好重新构造数据库,以使 未知的不是钥匙

{
    "_id" : ObjectId("56ec4e1bbf2f16a55f198d31"),
    "username" : "Harry Potter",
    "dates" : {
            "key":"2014-01-31",
            "value" : 25
    },
}
现在,您可以使用查询进行搜索