これは、ドキュメントが埋め込まれた私のmongodbドキュメントです。「イベント」はドキュメントのリスト (BasicDBList) で、各ドキュメントはキーを日付 (2013 年 1 月 1 日など) として保存され、値は一連のフィールドです。構造はこのように定義されているため、特定の日付 (2013 年 1 月 1 日など) に発生したすべてのイベントを取得できます。
2 つの質問があります。
このドキュメントを構成するより良い方法はありますか? 日付が良い考えであるため、キーはわかりませんが、同時にすべてのドキュメントを簡単に取得し、日付に基づいてメモリに保存したいと考えています。ドキュメントを取得するとき、キーを日付として、値をその日付のドキュメントのリストとして (Java を使用して) 持つ Hashtable が必要です。
日付を渡してドキュメントを取得するにはどうすればよいですか? たとえば、キーが 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"
}
]
}
}
ありがとうございました