每个项目mongodb组的按日期最新记录

玛纳希尔

集合中有很多项目,每个项目都有很多记录,有些有新日期的记录,有些则有一个星期或一个月的历史。我需要一个查询,该查询返回每个项目的最新最近记录。在.aggregate()的情况下,我需要填写完整的“数据”。我想要使​​用mongodb $ group的结果,该记录应该是每个设备的最新记录。

   {
    "result" : [ 
        {
            "_id" : 29,
            "gateway_id" : 1,
            "data" : [ 
                {
                    "r" : 203,
                    "v" : 3002
                }, 
                {
                    "r" : 221,
                    "v" : 3006
                }
            ],
            "device_id" : 29,
            "date_time" : "a"
        }, 
        {
            "_id" : 28,
            "gateway_id" : 1,
            "data" : [ 
                {
                    "r" : 203,
                    "v" : 3002
                }, 
                {
                    "r" : 221,
                    "v" : 3006
                }
            ],
            "device_id" : 28,
            "date_time" : "b"
        }, 
        {
            "_id" : 27,
            "gateway_id" : 1,
            "data" : [ 
                {
                    "r" : 203,
                    "v" : 3642
                }, 
                {
                    "r" : 221,
                    "v" : 3666
                }
            ],
            "device_id" : 27,
            "date_time" : "a"
        }
    ],
    "ok" : 1
}

我想要使​​用mongodb $ group的结果,该记录应该是每个设备的最新记录。

塞贾德·艾哈迈德(Sajjad Ahmed)

尝试以下代码段

db.collection.aggregate([
    {$group: {
        "_id": "$device_id",
        "gateway_id": {"$last":"$gateway_id"},
        "data": {"$last": '$data'},
        "date": {"$last": '$date_time'},
    }},
    {$project: {
        "device_id": "$_id",
        "gateway_id": "$gateway_id",
        "data": "$data",
        "date_time": "$date"
    }},
    {$sort: {
        "date": -1
    }}
]);

在上面的查询中,按设备ID和日期分组,每行中的数据和gateway_id将是最新的。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Mongodb查询:每个项目的日期最新记录

来自分类Dev

SQL-按每个记录的最新日期选择记录

来自分类Dev

MYSQL:仅根据日期返回每个组的最新记录

来自分类Dev

如何按号码为每个组选择最新日期?

来自分类Dev

django orm 最新项目组按每个外键

来自分类Dev

按日期查找每个不同列值的最新记录

来自分类Dev

如何在mongodb中获取每个组的最新记录?

来自分类Dev

MongoDB:按日期/时间获取每个ID的最新完整文档

来自分类Dev

按日期时间字段获取最新的MongoDB记录

来自分类Dev

通过SQL获取每个组的最新记录

来自分类Dev

Laravel 获取每个组的最新记录

来自分类Dev

SQL按组查找最新记录

来自分类Dev

如何在mongodb中获取每个组的最新N条记录?

来自分类Dev

SQL 检索每个 ID 的最新记录(日期)?

来自分类Dev

根据每个组的最新日期查找组的均值

来自分类Dev

按最大日期选择重新记录返回最新记录

来自分类Dev

按日期和按 ID 分组获取表的最新记录

来自分类Dev

MongoDB按日期汇总查询组

来自分类Dev

MongoDB按日期汇总查询组

来自分类Dev

如何从ActiveRecord中的每个组获取最新记录?

来自分类Dev

MYSQL-选择每个库存组的最新3条记录

来自分类Dev

MySQL-不同的结果显示每个组的最新记录

来自分类Dev

MySQL-不同的结果显示每个组的最新记录

来自分类Dev

Django获取每个组的最新信息,按外键分组

来自分类Dev

MYSQL - SELECT NULL 否则为每个组的最新日期

来自分类Dev

按ID分组,仅选择每个的最新记录

来自分类Dev

获取每个给定日期之前的雇员的最新记录

来自分类Dev

获取每个给定日期之前的雇员的最新记录

来自分类Dev

从列表中找到每个项目的最新记录

Related 相关文章

热门标签

归档