这是我的带有嵌入式文档的 mongodb 文档。“事件”是一个文档列表(BasicDBList),其中每个文档都存储有键作为某个日期(例如,2013 年 1 月 1 日),值是一堆字段。结构以这种方式定义,因此我可以获取在某个日期(例如 2013 年 1 月 1 日)发生的所有事件。
我有两个问题:
有没有更好的方法来构建这个文档?我不确定 key 作为日期是一个好主意,但同时我想轻松检索所有文档并根据日期将它们存储在内存中。当我检索文档时,我想要一个哈希表,其中键作为日期,值作为该日期的文档列表(使用 Java)。
如何通过传递日期来检索文档?例如,我想要键为 2013 年 1 月 1 日的所有文档。Java 中的查询是什么?
{
"_id": {
"_time": 1367928493,
"_machine": -1914548796,
"_inc": -1784811303,
"_new": false
},
"email": "xyz@yahoo.com",
"events": {
"Jan 1, 2013": [
{
"desc": "My Desc",
"title": "My Title",
"createDateTime": "May 7, 2013 8:08:13 AM",
"updateDateTime": "May 7, 2013 8:08:13 AM"
},
{
"desc": "My Desc2",
"title": "My Title2",
"createDateTime": "May 7, 2013 8:08:13 AM",
"updateDateTime": "May 7, 2013 8:08:13 AM"
}
],
"Feb 1, 2013": [
{
"desc": "My Desc3",
"title": "My Title3",
"createDateTime": "May 8, 2013 8:08:13 AM",
"updateDateTime": "May 7, 2013 8:08:13 AM"
},
{
"desc": "My Desc3",
"title": "My Title3",
"createDateTime": "May 8, 2013 8:08:13 AM",
"updateDateTime": "May 8, 2013 8:08:13 AM"
}
]
}
}
谢谢