从分组行中获取字段数

无限Prime

数据:

[
  { created_at: "2020-05-08T18:46:08.020Z", view: true, cta: false },
  { created_at: "2020-05-08T19:00:00.020Z", view: true, cta: true },
  { created_at: "2020-05-08T19:30:45.020Z", view: true, cta: false },
  { created_at: "2020-05-08T19:55:50.020Z", view: true, cta: true }
]

当我通过created_at按小时间隔对数据进行分组时,我得到的唯一的created_at计数就很好了。

  $group: {
    $hour: { hour: '$created_at' },
    count: { $sum: 1 }

  }

结果:

   hour: 18, count: 1,
   hour: 19, count: 3

现在,我怎么还包括计数ctaview领域,当字段值为true。我想获得如下结果:

    [{ hour: 18, ctaCount: 0, viewCount: 1 }],
    [{ hour: 19, ctaCount: 2, viewCount: 3 }]

尝试与多个组操作员进行分组,但无法按预期工作。

米克尔

您可以使用$ condcta直接引用字段,因为它是布尔值:

db.collection.aggregate([
    {
        $group: {
            _id: { hour: { $hour: "$created_at" } },
            count: { $sum: 1 },
            ctaCount: { $sum: { $cond: [ "$cta", 1, 0 ] } }
        }
    }
])

蒙哥运动场

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AngularJS获取字段数

来自分类Dev

如何从“通过” ManyToMany 对象获取字段数据?

来自分类Dev

如何获取解析中的关联字段数

来自分类Dev

如何获取postgres中的字段数?

来自分类Dev

在杂货杂货中获取字段值相等的行

来自分类Dev

连接具有不同字段数的行中的字段

来自分类Dev

结构中的字段数

来自分类Dev

如何在Eclipse中获取INPUT字段数据?

来自分类Dev

在Java中获取String mongo字段数据类型

来自分类Dev

从字段数据库中获取数据

来自分类Dev

如何使用 postgres 在 Django 中获取数组字段数据

来自分类Dev

在Gorm中动态获取字段的大小

来自分类Dev

从表中获取字段列表

来自分类Dev

从 Firestore 文档中获取字段

来自分类Dev

在Android中从第0行-1的行获取字段位置失败

来自分类Dev

DAX公式从同一表中的已过滤行中获取字段

来自分类Dev

在同一行中获取字段值,其中MAX(Field)LIMIT 1

来自分类Dev

如何在添加到数据库之前从模板获取字段数据并使用它?

来自分类Dev

从字段符号中获取字段名

来自分类Dev

(可选)获取字段

来自分类Dev

获取字段Hierachy

来自分类Dev

计算文档中的字段数

来自分类Dev

protobuf 中的随机字段数

来自分类Dev

如何仅从MySQL中的表中获取字段?

来自分类Dev

如何仅从MySQL中的表中获取字段?

来自分类Dev

从Flask中的mysql解析json以从记录中获取字段

来自分类Dev

从 Laravel 中的相关模型中获取字段?

来自分类Dev

firestore 从集合中的所有文档中获取字段

来自分类Dev

HttpWebClient从网页获取隐藏字段数据