MongoDB squema设计用于具有多个日期的对象
我正在建立一个活动网站。有两种类型的事件:MongoDB squema设计用于具有多个日期的对象,mongodb,Mongodb,我正在建立一个活动网站。有两种类型的事件: 具有特定日期和时间的事件。例如,戏剧表演可以在1月10日晚上8点、1月11日晚上8点和1月13日晚上7点进行 在几天内持续数小时的活动。例如,博物馆的展览可以在1月10日至1月30日上午10时至下午6时开放 我需要保存日期和时间,以便回答以下问题/疑问: 明天晚上7点到凌晨12点将举行哪些活动 这个周末将举行哪些活动 哪些活动即将结束?(离最后一天不到一周) 如果没有事件类型2,我们可以有以下事件类型: 名字 类别 日期:日期数组(每天都在数组中)
- 名字
- 类别
- 日期:日期数组(每天都在数组中)
- 名字
- 类别
- 日期:一组对象,如{“2015-01-10 09:00”:“2015-01-10 18:00”},其范围为每天的小时数
谢谢 这比我想象的要容易 首先,在MongoDB上不能将日期作为键 模型是:
{
"name" : "Bob Dylan",
"category" : "Exhibition",
"dates" : [
{
"init" : ISODate("2015-01-08T08:00:00Z"),
"end" : ISODate("2015-01-08T19:00:00Z")
},
{
"init" : ISODate("2015-01-09T08:00:00Z"),
"end" : ISODate("2015-01-09T21:00:00Z")
},
{
"init" : ISODate("2015-01-10T08:00:00Z"),
"end" : ISODate("2015-01-10T21:00:00Z")
}
],
"createdAt" : ISODate("2015-01-09T16:33:51.338Z")
}
查询是:
return Events.find({
'dates.init' : { $gte: dateInit },
'dates.end' : { $lte: dateEndPlusOneDay }
});