假设 MongoDB 中有一些文档,看起来像这样:
{
"lastDate" : ISODate("2013-14-01T16:38:16.163Z"),
"items":[
{"date":ISODate("2013-10-01T16:38:16.163Z")},
{"date":ISODate("2013-11-01T16:38:16.163Z")},
{"date":ISODate("2013-12-01T16:38:16.163Z")},
{"date":ISODate("2013-13-01T16:38:16.163Z")},
{"date":ISODate("2013-14-01T16:38:16.163Z")}
]
}
甚至像这样:
{
"allAre" : false,
"items":[
{"is":true},
{"is":true},
{"is":true},
{"is":false},
{"is":true}
]
}
每次数组中的数据更改时"lastDate"
,都应重新计算顶级字段。应该是最大的。仅当所有项目都为真时才应等于真。 "allAre"
"lastDate"
"date"
"allAre"
"is"
我应该如何构建查询以使用 MongoDB 实现这种行为?
在插入时预先计算一些值而不是在获取请求期间计算它们是否被认为是一种好习惯?