mongodb - $group 聚合中的自定义变量?
问题描述
给定这样的$group
聚合管道阶段:
$group: {
_id: ...,
hoursStreamed: { $sum: { $divide: [{ $subtract: ["$ts", { $max: ["$prev.ts", "$start"] }] }, 1000 * 60 * 60] } },
hoursWatched: { $sum: { $multiply: [{ $divide: [{ $subtract: ["$ts", { $max: ["$previous.ts", "$start"] }] }, 1000 * 60 * 60] }, "$viewers"] },
}
是否有可能以某种方式分配重复计算的结果
{ $divide: [{ $subtract: ["$ts", { $max: ["$prev.ts", "$start"] }] }, 1000 * 60 * 60] }
到一个可以同时用于hoursStreamed
和的变量hoursWatched
?
我看不出$let
在这种情况下如何使用,因为我们需要多个领域的结果。
解决方案
推荐阅读
- c# - 无法将类型“对象”隐式转换为“Microsoft.Office.Interop.Excel.Worksheet”。存在显式转换
- pycharm - 使用 PyCharm GUI 安装包 lxml Python 的问题
- javascript - 如何减少 Firebase 实时数据库中传输的数据量?
- python - 在树视图中插入图像
- google-contacts-api - 投射功能 + DRM
- api - ReferenceError:在初始化之前无法访问“选项”,但“选项”在使用前已初始化
- r - 如何在 Rstudio 服务器中停止
- javascript - Node.js - 将路由端点快速路由到数组内的对象键值
- c# - 我在我的程序上不断收到关于 Tesseract 阅读的异常,但是当我创建一个新程序时,它可以完美运行
- django - 在哪里使用 django 在部署和生产中提供文件