MongoDB如何根据集合中的其他文档返回包含计算字段的文档?

时间:2017-05-24 15:53:37

标签: mongodb mongodb-query

我基本上都在寻找从哪个地方开始使用最让您困惑的查询做法。

我有一系列移动设备。简化它看起来像这样:

[
    { number: 2145551234, reportDate: 201704, zeroUse: true },
    { number: 2145551234, reportDate: 201703, zeroUse: false },
    { number: 2145551212, reportDate: 201704, zeroUse: false },
    { number: 2145551212, reportDate: 201703, zeroUse: false },
    { number: 2145558888, reportDate: 201704, zeroUse: false },
    ...
]

我正在尝试编写一个执行以下操作的查询:

  1. 提取201704的所有文件
  2. 为每个文档返回一个附加字段lastDateUsed,以便在第一个文档的情况下,如果zeroUse标志为真,则它会查找该号码的zeroUse标志为false的下一个最新日期,在这种情况下,201703
  3. 问题的核心是我不想对每个1000多个文档运行这样的查询以确定结果。

    我的计划是在插入时执行一次计算,因此每次查询时都不需要重新计算。

    此外,如果zeroUse值为false,或者具有当前日期的lastDateUsed属性,我同样感到满意。

0 个答案:

没有答案